论文部分内容阅读
随着互联网技术的进一步的发展与深入,越来越多的企业应用需要应对百万级的高并发用户访问、低延时及7×24×365高可用性等空前的需求难题,应用系统的业务访问量与日俱增,对应用服务器和数据库的要求越来越高。在Web站点以及云平台中存在大量半结构化数据,传统的关系型数据库难以适应半结构化的数据存储访问模式,例如用户Session信息。在面临大规模数据访问时,RAM与ROM在读写速度上相差数个数量级,磁盘的IO操作会堆积RAM中的数据读写请求,造成性能瓶颈,从而导致越来越高的访问响应延迟。分布式缓存使用系统的高速内存(RAM)作为数据对象的存储介质,并采用键值对的形式存储数据。这样就可以在价格低廉、标准化的硬件和软件平台上的扩展系统的内存,专门用于缓存海量的数据,为大容量、业务关键型的事务处理提供业务支撑。随着业务需求的进一步发展,应用规模在不断的扩大,巨无霸应用也就越来越多,传统应用的垂直架构,已经无法应对各种复杂业务带来的各种挑战。只有进行业务梳理,将公共能力抽取成基础服务或公共服务,对复杂应用进行模块化拆分和服务化治理,降低服务消费者与服务提供者之间的耦合度。对采用了传统的垂直架构的系统应用进行服务治理化改造,将应用的各个部分的业务进行服务抽取和分离,形成一个个相对独立的服务节点,其中的每个服务节点只处理一件或多件相关的同类型的业务,如单点登陆服务器,只处理用户登陆相关的业务。应对百万级的并发访问、每秒数千的并发事务处理时,任何单个服务节点都不能做到及时响应。这个时候,考虑的不是增加单个服务器的性能,而是需要对高访问量、高并发量的服务节点架设一个或多个服务器集群分担业务压力,形成多台服务器提供相同的服务,并相互之间相互独立的服务器集群,最终实现整个应用的垂直架构平滑地向分布式服务框架演变。本论文选题来自于本人曾经实习的亚信科技有限公司的服务治理项目组,灵感来源于其对北京移动CRM系统服务化改造的北京移动能力开放平台项目,能力开放平台通过将业务支撑系统业务能力的逐步有序开放与管控,实现内部业务能力对内、外部渠道的共享以及开发者和运营者的利益双赢,使得电信业务开发变得更为容易和高效,促进移动互联网业务的发展和繁荣,支持业务能力持续创新。本文旨在研究和探讨,如何实现通过服务治理的方式将传统应用的垂直架构方案演变成分布式服务架构方案,以达到解耦服务提供方和服务使用方之间的耦合关系的目的,并通过分布式缓存、分布式服务、服务器集群、消息中间件、服务注册中心、数据库分库分表、负载均衡、系统业务分拆等技术手段应对高访问量、高并发量、高可用等方面的应用需求。