论文部分内容阅读
云计算的应用成为一种不可避免的趋势,平台的作用转变为向终端用户提供数据交互服务。从纵向来看,服务集群是一个分层系统架构,分别通过不同服务层处理对应的服务请求和数据处理。从横向来看,集群节点的协同作用保证了降低单一应用的压力,同时对服务处理的异常情况做出及时处理。在实际应用场景中,用户的请求状态是不可预测的。系统处于正常访问状态时,服务架构能够提供较为稳定的数据支持,但是当出现大量的服务请求或异常请求时,需要系统架构针对服务架构、搭建成本、性能提高等多个方面进行改进。部分服务组件有较为成形的组件设计和提升性能的解决方案,但不适合现有的平台体系结构。在不断地比较相应的优化方案来提升系统的吞吐量和响应时间的同时,也考虑一些成熟的中间件是否能在集群中作为中间协调者。最后结合服务端请求服务的特点,提出了一些优化的方案和系统结构改进处理思路。本文从负载应用场景出发,介绍了不同应用负载的处理策略。针对服务节点对代理请求的处理,将应用层分为两个处理核心:请求流量处理和请求分发处理。针对不同处理层不同的处理重点,设计了相应核心业务处理算法和突发流量的令牌请求策略,保证高优先级请求可以迅速得到处理;对限流层转发的请求进行细粒度的划分,设计对应的负载分配策略,保证后端服务面对多任务请求时更好的利用集群性能,分配到客户端请求的节点能有效的进行业务处理。对数据处理过程中的缓存层分布式结构进行了优化设计,利用Zookeeper作为处理协调者来搭建缓存集群,改进系统部署策略,降低了系统一致设计的复杂性,保证缓存层的处理高效性。对不同结构类型的数据进行分离存储,将结构化数据存储到关系型数据库,非结构化数据存储到非关系型数据库,同时对非结构数据库索引进行转移存储。在存储数据过程中能更好地结合数据库自身处理特点,提升其数据读写性能。该系统不仅针对存储服务模块进行了优化改进,而且为了避免系统级监控组件为实际运维操作带来不必要的困扰,将性能监控方案一并应用到现有的设计模块中。系统中优化与监控相结合,在服务节点出现超过设定阈值的情况时,及时发出预警并可以通过前端查看实时性能数据。在高并发请求的情况下,系统不仅提高了排错处理效率,同时保证了系统的可用性和稳定性。