三峡通航调度系统架构优化研究

2021-11-10 08:13肖圣魁孙荣姜东参扶湘典
中国水运 2021年10期
关键词:架构

肖圣魁 孙荣 姜东参 扶湘典

摘 要:三峡通航调度系统作为三峡局的核心应用系统,涉及船舶过闸申报、计划下发、过闸统计、信息服务等各个重要的业务。近些年随着三峡通航业务的不断深化拓展,调度系统的压力日益增加,已经逐渐无法满足三峡通航信息化水平飞速发展的需要。为进一步提升系统的稳定性以及可持续性,本文对目前调度系统存在的主要问题进行的分析,并研究目前主流的系统高可用部署技术,提出一套适用于三峡通航调度系统的架构优化方案。

关键词:三峡通航;架构;高可用

中图分类号:U641         文献标识码:A            文章编号:1006—7973(2021)10-0067-02

三峡通航调度系统是以三峡局颁布的《通航调度管理办法》为指导,构建涵盖坝区升船机、葛洲坝船闸、三峡船闸、锚地等通航设施于一体的综合调度模型。并在此基础上,以三峡局《信息资源规划方案》为依据,充分利用已建设网络系统、GPS综合应用系统、应用框架系统和数据中心等资源,系统性构建三峡升船机航运调度、安检系统。调度系统功能主要包括:智能化调度方案生成、船舶定位与报到、船舶过坝申报、船舶动态管理、调度计划、预计划、安检计划、调度管理、锚地管理、运行管理、气象水情管理等功能。目前随着三峡通航业务的发展,在调度系统的基础上二次开发了资料审核、区域联动、复检计划、船舶流量控制等功能,对调度系统的压力逐渐增加,为提升系统的稳定性,满足不断发展的业务需求,亟需对调度系统的架构进行优化调整。

1 三峡通航调度系统运行现状及存在的问题

调度系统作为三峡通航业务内部使用的重要系统,部署在内网环境,其应用服务器的整体架构如下图所示:

调度安检系统在船舶申报、调度、计划以及安检等各个流程及环节发挥了重要的作用,但随着运行时间的增加,部分问题日益凸显,对服务器及系统的稳定运行造成的较大的影响,影响了调度系统后期的升级优化,无法满足日益增长的业务需要。

调度系统应用服务器目前部署有IBM websphere中间件,为主从模式。当主服务器故障时,将直接导致调度系统业务中断;当从服务器故障时,主服务器应用负载大幅度增加,影响系统运行速度。

根据以上分析可以发现,调度系统采用的主从结构虽然能够对业务进行负载均衡,减少服务器应用的压力,但依旧存在单节点隐患。三峡通航作为影响长江水运的重要业务节点,一旦调度系统产生故障,将会影响船舶正常过闸流程,保证服务器及系统应用的稳定运行至关重要。因此,对调度系统的架构进行优化是十分必要的。

2 架构技术分析

(1)集群。集群就是一组相互独立的计算机,通过高速的网络组成一个计算机系统,每个集群节点都是运行其自己进程的一个独立服务器。对网络用户来讲,网站后端就是一个单一的系统,协同起来向用户提供系统资源,系统服务。通过网络连接组合成一个组合来共同完成一个任务。根据目的的不同,服务器集群可以分为高性能集群、高可用集群以及负载均衡集群。

(2)负载均衡。负载均衡(Load Balance)是集群技术(Cluster)的一种应用。负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力。任何的负载均衡技术都要想办法建立某种一对多的映射机制:一个请求的入口映射到多个处理请求的节点,从而实现分而治之。这种映射机制使得多个物理存在对外体现为一个虚拟的整体,对服务的请求者屏蔽了内部的结构。

(3)高可用。高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,在集群服务器架构中,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。

根据对不同架构技术进行分析比选,并结合三峡通航业务发展的实际,目前三峡通航业务能力从小型朝着中型过渡,对业务的连续性较高,同时因为系统数量较多、环境复杂,本次架构的部署应该尽量简单;经过研究分析,拟采用负载均衡以及高可用作为本次服务器架构优化的方案,使用的软件为LVS、Keepalive以及Nginx。

3 架构部署以及实现

LVS是一个开源的软件,可以实现传输层四层负载均衡。LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR);八种调度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh)。

Keepalived基于VRRP协议来实现高可用解决方案,避免单点故障[1]。至少需要两台服务器运行Keepalived[2],即一台为Master,另一台为Backup,但对外表现为一个VIP(虚拟IP)。两台服务器会检测对方状态,如果有一台服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,通过服务器自动接管应用,能够避免产生单点故障。

经过优化后的架构如下图所示:

4 总结

根据以上的测试结果,可以发现通过LVS+Keepalived+Nginx的高可用架构,能够有效避免产生单点故障,提升服务器的稳定。同时随着业务的不断增加,通过增加节点服务器给Nginx服务器分担负载,具有较高的可持续性,可以有效适应三峡通航业务的不断发展,为三峡通航信息化水平的进一步发展打下一定的基础。

参考文献:

[1]单康康,王勇超,郭晔.基于LVS+Keepalived的DNS集群研究[J].電信快报,2018(3):26-28

[2]孙天昊,陈飞,邓俊昆.一种基于cookie回话保持的LVS集群系统[J].计算机应用研究,2013(4):1102-1104.

猜你喜欢
架构
基于模糊理论的自主式交通系统多维架构映射关系建模
基于BS架构的内部人员绩效评分系统设计研究
基于云控平台雾计算架构的网联汽车路径控制
未来可期 中科院计算所“香山”高性能处理器架构浅析
AMD公布最新路线图:2022年前推出5nm Zen 4架构处理器
苹果英特尔分手,Arm最高兴?
AMD发布首款Vega计算卡:16GB HBM2显存
沃尔沃汽车宣布启动全新CMA豪华紧凑型整车平台架构
VIE:从何而来,去向何方
企业架构需要统一标准