集群技术在ATS系统中的应用

来源 :现代信息科技 | 被引量 : 0次 | 上传用户:qzzp666
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘  要:在基于通信的列车运行控制CBTC系统中,列车自动监控子系统用以在线指挥和监督列车的运行,其对提高列车的运行效率至关重要。应用服务器是ATS子系统的大脑,可保证ATS系统的稳定运行,因此其可用性和可靠性尤为重要。通过引入集群,可大幅提高应用服务器的可用性和可靠性,截至目前,应用服务器集群已在长沙地铁四号线安全运营两年。
  关键词:列车自动监控;应用服务器;集群
  中图分类号:TP315;U284      文献标识码:A 文章编号:2096-4706(2021)06-0022-03
  Application of Cluster Technology in ATS System
  TAO Cui1,HU Yubo1,ZHANG Fangjie2
  (1.Beijing Branch,Hunan CRRC Times Signal & Communication Co.,Ltd.,Beijing 100071,China;
  2.China Nuclear Control System Engineering Co.,Ltd.,Beijing  102401,China)
  Abstract:In the Communication Based Train Control(CBTC) system,the automatic train supervision(ATS)subsystem is used to command and supervise the train operation online,which is very important to improve the efficiency of train operation. Application server is the brain of ATS subsystem,which can ensure the stable operation of ATS system,so its availability and reliability are particularly important. Through the introduction of cluster,the availability and reliability of application server can be greatly improved. Up to now,application server cluster has been applied in Changsha Metro Line 4 and has been in safe operation for two years.
  Keywords:ATS;application server;cluster
  0  引  言
  列車自动监控(ATS)系统是基于现代数据通信和计算机网络的分布式实时计算机控制系统,通过与列车自动防护ATP系统和列车自动运行ATO系统的协调配合,完成对城市高密度轨道交通信号系统的自动化管理和全自动行车调度指挥控制[1]。ATS系统属于分布式网络系统,由中心应用服务器子系统(CATS)、车站服务器子系统、工作站子系统、通信服务器子系统、运行图工作站子系统组成。CATS是ATS系统的大脑,其稳定性和可靠性是ATS系统设计的核心[2]。
  在长沙地铁四号线的设计中,CATS采用三重冗余的设计方法。为保证冗余框架下数据的一致性、稳定性以及CATS主机的可用性,在CATS的设计中引入了ZooKeeper集群,用以实现运行数据的存储同步以及保证CATS主机的唯一性。在正式应用前,对集群方案进行了充分测试,验证了ZooKeeper集群在CATS选主及数据存储方面的正确性及可行性。
  1  ZooKeeper介绍
  ZooKeeper是一个分布式协调服务的开源框架,主要用来解决分布式集群中应用系统的一致性问题[3]。
  ZooKeeper本质上是一个分布式的小文件存储系统,提供类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理,从而用来维护和监控所存储数据的状态变化。通过监控数据状态的变化,可以实现基于数据的集群管理。例如统一命名服务、分布式配置管理、分布式消息队列、分布式锁、分布式协调等功能的实现。
  ZooKeeper集群角色有三种:
  (1)Leader:ZooKeeper集群工作的核心。事务请求(写操作)的唯一调度和处理者,保证集群事务处理的顺序性;集群内部各个服务器的调度者。
  (2)Follower:处理客户端非事务(读操作)请求,转发事务请求给Leader;参与集群Leader选举投票。
  (3)Observer:观察者角色。观察ZooKeeper集群的最新状态变化并将这些状态同步过来,对于非事务请求,其可以独立处理,对于事务请求,则会转发给Leader服务器进行处理。其不会参与任何形式的投票,只提供非事务服务,通常用于在不影响集群事务处理能力的前提下提升集群的非事务处理能力[4]。
  2  集群数据存储及同步
  长沙地铁四号线选用ZooKeeper来搭建集群,利用双网两套平台集群(A网集群和B网集群),对部分关键的内存数据、配置文件、数据库数据进行实时冗余存储。保证数据源数据(即内存数据、配置文件、数据库数据)、A网平台集群数据、B网平台集群数据这三种数据的一致性。数据存储及同步的流程图如图1所示。
  在长沙地铁四号线的设计中,集群需要同步的数据包括当天计划、派班计划、车次窗更新、用户信息、路径信息、列车识别号等,这些信息均不涉及安全相关功能[5]。   CATS主机首先会同时向两套集群写入要存储的数据(数据流1、数据流2),当发现两套集群数据不一致时,可对两套集群数据进行同步(数据流3、数据流4)。当CATS主备发生切换时,应用服务器若发现自己是主机,则需要去集群上获取当前数据。其优先从A网集群读取数据,如若A网集群不可用,才去B网集群读取数据。
  3  CATS集群选主
  CATS集群选主是利用双网两套集群,根据CATS在两套集群上的注册信息,选举出由哪个CATS做主机。其核心目标是实现在双网环境下,只要有一个网可用,有一个平台集群正常,CATS就能够正常提供服务。
  假设三台CATS的节点名称分别为S1、S2、S3,使S1、S2和S3同时在A网集群和B网集群上注册节点,注册内容包括是否为主机、是否在线两项。注册完成后,A网集群和B网集群之间会进行数据同步。A网集群和B网集群分别进行选举,最后优先采纳A网集群上的选举数据,同时在A网集群、B网集群之间同步选举数据。S1、S2和S3各自监听和维护集群上的选举数据,当S1、S2和S3发现自己维护的选举数据发生变化时,再启动一次新的选举。
  3.1  基本选举策略
  用户要求,正常情况下S1和S2互为主备,S3固定位备机,不可手动倒机升主。仅当S1和S2都不可用的情况下,S3才可升为主机。依据此需求,设计选举策略如下:
  (1)优先选举S1和S2(同等权重),只有当S1和S2与平台集群A和B均失去联系时才选举S3。
  (2)算法保证S1和S2以同等概率获得选举机会。
  综上可知,S3被选为主机的唯一条件就是S1与S2均与集群失去联系,故S3的选举不再详细讨论。
  3.2  S1和S2的选举策略
  由于S1和S2具有同等权重,为保证每次选举结果仅有一个主机,设计选举策略如下:
  (1)在A网集群平台没有选出主机而B网集群平台选出了主机时,以B网集群平台选举结果为准。
  (2)A网集群平台和B网集群平台同时选出了主机且选举结果一致时,选举成功。
  (3)A网集群平台和B网集群平台同时选出了主机且选举结果不一致时,以A网集群平臺的选举结果为准。
  (4)A网集群平台和B网集群平台同时离线时,主机保持不变。
  4  CATS集群环境部署及配置
  在长沙地铁四号线中,中心机房为CATS主备配置(S1和S2),联锁区8设置了备用CATS(S3)。所有终端均为双网配置。两套集群中,每套分别部署5个集群节点。由于联锁区的车站服务器都采用了双机冗余配置,故A网的5个集群节点部署在A机,B网的5个集群节点部署在B机。在该配置方案下,一套集群中至少有3个集群节点正常联网,该集群才可使用,如果是2个及2个以下节点联网,那么该集群不可用。部署示意图如图2所示。
  由于引入了集群,故CATS的配置文件中需添加集群节点IP的配置,配置为:
  [ZK]
  AddrA = 10.28.1.10:2181,10.28.1.61:2181,10.28.1.211:2181,10.28.2.101:2181,10.28.2.201:2181
  AddrB = 10.28.5.8:2181,10.28.5.62:2181,10.28.5.212:2181,10.28.6.102:2181,10.28.6.202:2181
  TimeOutA = 2000
  TimeOutB = 2000
  bCreateLog = N
  本案例中每套集群设置了5个集群节点,集群服务部署在C盘,数据存储放在D盘。D盘ZooKeeper中,myid的值依据下面的节点列表进行相关配置。每套集群zoo.cfg的配置为:
  #A网服务器列表
  server.1 = 10.28.1.10:2888:3888
  server.2 = 10.28.1.61:2888:3888
  server.3 = 10.28.1.211:2888:3888
  server.4 = 10.28.1.101:2888:3888
  server.5 = 10.28.2.201:2888:3888
  #B网服务器列表
  server.1 = 10.28.5.8:2888:3888
  server.2 = 10.28.5.62:2888:3888
  server.3 = 10.28.5.212:2888:3888
  server.4 = 10.28.6.102:2888:3888
  server.5 = 10.28.6.202:2888:3888
  5  CATS集群的测试
  依据图2的集群部署图及配置文件搭建测试环境,对集群的数据同步及选主功能进行测试。测试场景及结果如表1所示。
  6  结  论
  经过测试,引入集群后可实现CATS的三重冗余,保证某一时刻只有一个CATS作为主机工作,且CATS倒机过程中不会出现数据丢失,在很大程度上提高了CATS的可用性和可靠性,有效保证了对长沙地铁四号线列车的监视和控制,提高了运营的可靠性。
  参考文献:
  [1] 中国城市轨道交通协会技术装备专业委员会.城市轨道交通CBTC信号系统—ATS子系统规范:CZJS/T 0030—2015 [S]. 2015:27.
  [2] 李芝宏.城市轨道交通ATS系统监控子系统研究 [D].兰州:兰州交通大学,2015.
  [3] 唐海东,武延军.分布式同步系统ZooKeeper的优化 [J].计算机工程,2014(4):53-56.
  [4] 刘芬,王芳,田昊.基于ZooKeeper的分布式锁服务及性能优化 [J].计算机研究与发展,2014(S1):229-234.
  [5] 李泽军,李锐,娄智,等.城市轨道交通运营与信号 [M].合肥:中国科学技术大学出版社,2014.
  作者简介:陶翠(1985—),女,汉族,山东聊城人,测试工程师,中级工程师,硕士,研究方向:模式识别与智能控制;胡玉波(1982—),男,汉族,江苏淮安人,开发工程师,中级工程师,硕士,研究方向:模式识别与智能控制;张方杰(1981—),男,汉族,湖北潜江人,系统工程师,高级工程师,硕士,研究方向:模式识别与智能控制。
其他文献
摘 要:为研究大型复杂电子项目工程建设过程中的风险事件,文章从体系工程视角,聚焦风险传递路径和传递模式,构建了一种基于群汤模型的技术风险传递模型,探讨了大型复杂电子项目风险传递机制与应对策略,并给出了风险控制策略。研究结果表明,在体系工程推进过程中,应及时识别和发现风险源规模巨大的节点,并制定相应的风险应对措施,可以更精确地预测和控制高风险事件的发生。  关键词:体系工程;风险事件;风险传递;群汤
摘 要:词向量作为自然语言处理的基础技术,随着大数据和深度神经网络的发展,其算法也随之得到了更好的发展,尤其是近些年来各类新式算法和思想层出不穷,使得自然语言处理的准确度得到极大的提升。在阐述各个词向量算法的同时,穿插例子和图表,使大众更加清晰透彻理解算法的过程和优缺点。通过对词向量算法的发展进行整体的回顾,加深对词向量的理解,在解决问题的前提下为正确选用哪种词向量而做出更好的判断。  关键词:词
摘 要:随着教育信息化进程的不断推进,海量的教育基础数据应运而生,各高职院校越发关注及重视如何利用这些“数字资产”为师生创建一个更加个性化的校园服务体系。运用基于大数据的教育分析平台及真实的院校业务数据,构建以学生为对象的多维度行为分析模型,并以广州某高职院校建设实施为例,从学生概况分析、学生行为分析、学生综合预警等维度向校方呈现精准、个性特征明显的学生综合画像,为学生的个性化学习生活提供导向依据
摘 要:针对传统测控领域存在的测试效率低、测试复杂度高、测试资源利用不足等问题,文章提出基于B/S架构的分布式测控技术架构,利用SOA(面向服务架构)设计思想,并结合实时中间件和分布式数据库实现设备间的互联互通互操作,提高测试效率,降低测试复杂度,在分布式架构下,充分利用测试资源。该文对当前从事测控领域的设计人员和开发人员具有一定的参考价值,是面向服务架构设计思想的综合应用体现。  关键词:B/S
摘 要:文章设计了一种基于自然语言处理的发电设备知识库系统,包括知识抽取、语料和知识存储、知识问答排序和知识库前端问答等模块,构建过程为:首先进行发电设备领域自然语言处理基础模型训练,再针对领域语料进行知识抽取,最后利用排序模型实现知识问答。对比4种知识抽取方案可得:对于Top1和Top3准确率,知识抽取前处理增加MRC模型比后处理增加MRC校验回路准确率高;对于Top5准确率,后处理中增加MRC
摘 要:文章对融合词信息增强中文命名实体识别问题进行了研究,提出一种用于中文命名实体识别的融合词信息神经网络模型系统。首先使用预训练语言模型Bert对字进行编码得到字标识,然后使用SoftLexicon基于统计的方法将词统计语义信息融合进入字表示中,之后使用设计的GraphLexicon根据文本内字、词之间的交互关系图结构,将字词信息表示相互融合,达到较高的命名实体识别准确率。  关键字:中文命名
摘 要:随着知识图谱技术及应用的不断发展,形成了一系列独立的开发组件库,这些组件库在知识图谱的某些环节和领域中具有广泛的应用,但是其中大多数组件库之间相互独立、缺少统一标准,难以聚合形成体系开放能力。由于需要掌握多个独立组件的开发规范标准,这给相关研究和应用造成一定的难度和阻碍,因此利用Python的集成设计模式和语言黏合优势,对成熟的组件库进行分层分类整合,具有重要的实用价值。  关键词:知识图