李 寅,李佑文,褚红健
(南京国电南自轨道交通工程有限公司,江苏南京 210032)
轨道交通建设是近年来城市基础设施发展的重点,城市轨道交通在城市住宅区、交通运输中心和工作地点之间提供了一个快捷便利的连接[1]。城市轨道交通与综合监控系统密切相关,综合监控系统将轨道交通内部各个分散孤立的自动化系统联结成一个有机的整体,实现轨道交通各专业相关系统之间的信息互通、资源共享[2]。它至少需要集成变电所自动化系统、机电设备监控系统、火灾报警系统、屏蔽门系统、防淹门系统、门禁系统、广播系统、闭路电视系统、自动列车监控系统、乘客信息导向系统、自动售检票系统、信号系统、时钟系统等多个子系统[3]。综合监控系统与各系统之间接口众多,数据交互量大,因此安全性、可靠性要求成为城市轨道交通运营工作的重点。
城市轨道交通综合监控系统采用分层、分布式架构,中心及车站两台主备冗余服务器分别独立工作,各自处理不同应用的数据,实现可靠与高效的统一,如图1所示。在每台工作站与服务器上都有完全同步的面向对象的实时数据库副本,因此具有分布式软件架构所具有的高效灵活的优点。并行对象管理服务(POMS)自动向连接到局域网络(LAN)的所有服务器和工作站发布数据。因为每台主机都维护着POMS数据库,刷新的数据只是POMS数据库的一部分,所以并行的面向对象的实时数据库极大地简化了系统容错功能设计。
当数据发生变化时,信息在局域网内广播,在网络内的工作站和服务器都可以收到广播信息。每条信息都含有序列号,信息丢失的时候会很快被发现,并发送重传丢失信息的请求。如果软件或硬件发生故障导致某一服务不再可用,将由运行在另一台主机或服务器上的进程自动接管这一服务(见图1)。
图1 中心及车站主备服务器网络拓扑
在本设计中,服务器1与服务器2为冗余服务器,分别维护一个并行的实时数据库,保持数据的一致性。正常情况下,系统始终保证其中一个服务器为主,而另一个为备。综合监控系统的应用链接的是主服务器。假设服务器1为主服务器,服务器2为备服务器,服务器1负责采集与处理车站实时数据,数据流如图2所示。
正常情况下由同步和复制程序保证主备数据库服务器的数据一致,当车站或中心的一台实时服务器出现故障时,例如主服务器断电、断网,另一台实时服务器可以立即转为主机运行,不丢失任何数据。
若某时刻主服务器由于宕机或网络中断导致退出服务,备服务器将切换为主服务器并接替所有工作,不会影响数据的采集与处理,且历史数据、报警数据、配置数据不会丢失,如图3所示,服务器1故障从现场来的数据流示意图。在服务器1故障的情况下,OCC服务器2提供给OCC工作站数据。当RDBMS管理进程监测与到主的连接失败时,在切换之前会先尝试重新连接,服务器可能只是暂时失效,如重启计算机。如果RDBMS管理器进程在第二次尝试后,依旧无法连接服务器,则确定此服务器不可用,并切换到另外一个服务器。
当实时服务器1恢复,它首先从实时服务器02同步实时数据,如图4所示。当同步完成,OCC实时服务器1成为备服务器,随时准备接替服务器2的工作,并且整个过程不影响服务器2的正常工作。
数据采集程序提供数据采集服务,从车站采集实时数据送至中心服务器。数据采集程序运行在中心主备两台服务器上,系统正常运行时,其中一个数据采集程序提供数据采集服务,如图5所示。
若在某一时刻数据采集程序1退出服务,则另一台服务器上的数据采集程序2立即接管数据采集任务继续运行,保证数据不丢失,如图6所示。
图2 数据流示意
图3 服务器1故障
图4 服务器1恢复
在数据采集程序1恢复之后,将作为备用等待提供服务,不会影响当前数据采集服务器的进行。只有当前提供服务的程序退出,才会接替数据采集服务。
城市轨道交通综合监控系统是地铁安全运营的重要保障,若综合监控的安全性、可靠性无法保证,则有可能出现地铁运营瘫痪、乘客生命财产安全受到威胁等重大问题。因此综合监控系统的安全性、可靠性是综合监控系统的重要指标,成为监控系统设计的重中之重。本容错机制设计运用在城市轨道交通综合监控系统软件平台中,已在较多城市轨道交通大型综合系统中得到了应用与验证,并深受用户好评。
图5 数据采集示意
图6 数据采集程序1退出服务