短信平台双机互备体系研究

2017-03-23 21:05顾同江安金鹏弋才勇
科技创新与应用 2017年6期
关键词:负载均衡

顾同江+++安金鹏+++弋才勇

摘 要:目前各企业在线运行着多套业务应用系统,并且在逐步增多,如邮件系统、网络管理系统、OA系统、企业内控管理系统等,随着业务应用部署规模的扩大,接入业务数量的不断增多,普通的单一的短信服务架构已不能满足业务需求,出现短信收发延迟时间过长甚至收发失败的情况,失去通知、监控类短信收发的重要意义。通过短信平台双机互备体系的研究,提出一种新的短信平台架构模式,有效避免因服务器或数据库异常造成短信无法发送的问题。根据企业业务发展情况分析,使用短信平台进行业务往来的系统会逐步增加,需要保证短信的稳定性和时效性,因此对短信平台的体系结构升级改造势在必行。

关键词:短信平台;双机互备;负载均衡

1 系统相关背景

由于业务需求,应用短信的程度日益加大。传统的单一服务器短信平台系统已经无法满足业务需求,所以在此提出一种新的短信平台体系——双机互备体系。通过对该体系的研究探讨,考究该体系的可行性和应用价值。

2 双机互备体系的介绍

该短信平台双机互备系统为B/S结构,由负载均衡连接两台短信服务器,由负载均衡将接收用户请求并将请求分摊到主、备服务器上。分别在两台服务器上搭建数据库,主、备数据库实现数据的实时同步。再由三台网关服务器发送至运营商。

对现短信平台软件进行升级,分别对三大运营商的接口通道升级为网关API的收发。按照分层的方式实现业务与承载的分离,通过具有业务路由功能的功能层可以实现各业务系统调用,对业务数据的透明访问,和业务模块之间的有机集成,从而提供灵活多样的业务接入能力和业务扩展能力,并且可以通过业务支撑单元的外部开放接口可以提供简便、安全、可靠、易于扩展的第三方业务的透明接入系统途径。

对现短信平台硬件进行改造,通过负载均衡将访问流量分配到主、备短信服务器,数据写入数据库集群,数据库集群采用主从互备的机制实现,在将数据通过三台网关服务器分发到各运营商。

3 双机互备体系的优势

(1)利用负载均衡来扩展网络设备和服务器的带宽、增加吞吐量和并发能力,加强网络数据处理能力、提高网络的灵活性和可用性。利用负载均衡和两台主、备服务器,能有效解决由于传输数据量过大导致网络阻塞的问题,降低服务器单节点风险,提高系统的整体性能。

(2)短信平台利用双服务器主从互备的特点,能有效增加系统的容错性和稳定性。数据库集群主、从互备,能够使数据做到实时同步,可以有效避免因数据库异常造成的短信无法发送以及数据丢失的问题。

(3)采用开放式的系统体系结构和负载动态均衡系统设计技术,保证系统容量的动态增长和功能的完善和升级,适应信息管理技术不断进步的需要,并为新技术的发展提供应有的可行空间。

(4)软件系统的設计采用模块化结构设计和规范化标识,保证软件的可维护性要求,当系统软件局部功能模块发生故障时,不影响其他模块的正常运行。

4 双机互备体系的具体建设

系统结构是基于中间件的三层客户机/服务器模式,将业务层、功能层和传输层分为三个不同的部分。短信数据的收发是通过传输层进行的;短信数据的完整性与一致性是功能层来保证的;各业务系统与业务层对接,只负责业务的处理。

业务层:提供的用户通过多种接入方式接入系统后,向用户提供的短信收发服务。

功能层:也就是系统的业务逻辑层,是由接口和短信平台、数据库共同完成,功能层与用户终端访问方式无关。

传输层:构架平台的最底层,主要是由应用服务器、WEB应用中间件与数据库组成。

其中关键步骤有:

(1)数据库体系基于容量和时间双约束的溢出检测和自适应的日志运行可靠性设计。

数据库Master-Slave模式,一台Slave承受不住读请求压力时,可以添加多台,进行负载均衡,分散读压力。还可以对多台Slave进行分工,服务于不同的系统,因为不同系统的查询需求不同,对Slave分工后,可以创建不同的索引,使其更好的服务于目标系统。

数据库Master-Master模式互相将对方作为自己的Master,自己作为对方的Slave来进行复制,但对外来讲,还是一个主和一个从。当主Master下线时,备Master切换为主Master,当原来的主Master上线后,因为他记录了自己当前复制到对方的什么位置了,就会自动从之前的位置开始重新复制,不需要人为地干预,大大提升了效率。

数据库体系采用mysql主动模式的Master-Master(Master-Master in Active-Active Mode)模式,Master-Master复制的两台服务器,既是master,又是另一台服务器的slave。这样,任何一方所做的变更,都会通过复制应用到另外一方的数据库中。

通过短信业务应用的特性,需要实现数据分布(Data distribution)、负载平衡(load balancing)、备份(Backups)、高可用性和容错行 (High availability and failover),对比后采用Master-Master模式。

(2)接口监控基于Watchdog的监视和自启复活的可靠性设计:采用watchdog模式对应用和短信平台的接口程序进程进行24小时自动监控,出现问题后及时重启接口进程及服务告警。

watchdog 实际上是模式核心是一个用于接口进程服务主动重启的计时器机制,在指定时间内对/dev/watchdog列表中接口进程服务进程进行一次检查,如果进程正常则归零计时器,重新倒计时。如果在指定时间内接口进程进程异常,watchdog便认为接口进程服务进程发生严重故障,主动重启接口进程服务进程,实现接口进程的监视和自启复活,以求自救而不是等死。

(3)基于双机热备和负载均衡的体系结构设计:通过双机热互备技术,采用的active/standby 方式,active服务器处于工作状态;而standby服务器处于监控准备状态。当active服务器出现故障的时候,通过软件诊测或手工方式将standby机器激活,保证应用在短时间内完全恢复正常使用。结合mysql数据库集群主从互备技术,采用主动的Master-Master模式,实现数据的一致性;从而构建短信平台双机互备体系。通过设置虚拟服务地址(IP),将位于同一地域(Region)的多台服务器虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到服务器池中。网络负载均衡会检查服务器池中后端服务器的健康状态,自动隔离异常状态的后端服务器,从而解决了单台后端服务器的单点问题,同时提高了应用的整体服务能力。

双机互备采用F5负载均衡来接收用户的请求,由负载均衡将请求分摊到主、备服务器上。主、备服务器运行环境为Redhat Linux 5.0,应用服务为Apache,基于Application Platform平台进行集成开发,使用 Mysql 5.0数据库,基于PHP,Perl开发语言的面向对象的系统设计模式。

数据库体系采用mysql主动模式的Master-Master(Master-Master in Active-Active Mode)模式,避免因单数据库或硬盘容量占用率过大等异常造成短信无法发送;对数据库实现主备模式、增加系统的容错性和稳定性。

5 结束语

系统增加冗余备份、拥塞控制、状态报告、优先级、调度机制、消息跟踪等模块,优化接口管理、网关吞吐量模块,提高程序的稳定性和短信发送效率。

通过具有业务路由的功能层实现各业务系统调用,对业务数据的透明访问,和业务模块之间的有机集成,从而提供灵活多样的业务接入能力和业务扩展能力,并且可以通过业务支撑单元的外部开放接口可以提供简便、安全、可靠、易于扩展的第三方业务的透明接入系统途径。提供了webservice,url,socket,中间库等多种接口。

短信平台双机互备体系非常适合对短信业务需求较高的企业和单位,提升效率的同时也能有效提高系统的稳定性和容错性。

猜你喜欢
负载均衡
LBS检索容灾架构研究
Linux负载均衡集群技术在网络服务器中的应用
Oracle MAA在汽车行业电子政务平台中的应用
社区教育平台运营策略研究
异构环境下改进的LATE调度算法
基于负载均衡的云资源调度策略研究
基于新型VPN 技术的高校校园网改造
基于云计算的虚拟实验系统的设计及应用
基于离散PSO算法的医疗云存储部署策略
多站点同步更新系统的设计