The Application of SpringCloud Micro-service Architecture in the Construction of
Rail Transit Security Platform
傅均承 FU Jun-cheng;张居力 ZHANG Ju-li;李健 LI Jian
(四川旷谷信息工程有限公司,成都 610000)
(Sichuan Crungoo Information Engineering Co.,Ltd.,Chengdu 610000,China)
摘要:安防平台是轨道交通安全管理和数据分析的重要基石,主要应用于港口、机场、指挥园区、智慧城市等安防重点领域的安全监控及应急指挥,也可以拓展应用于其领域内的大数据安全监管及运营智慧化管理。安防平台是基于物联网的大数据智慧集成平台。将视频信号监控、危险警告、电子围栏边界、电子门禁控制、安检出入口控制、电子巡更等子系统进行信息整合,实现数据融合,建立智能联动体系。同时对各子系统设施设备运行状态智能监测、控制、记录、显示。实现智能化安全监管联动联防,为安全监管和应急指挥提供及时的、有效的决策辅助作用。
Abstract: The security platform is an important cornerstone of rail transit safety management and data analysis. It is mainly applied to safety monitoring and emergency command in key areas of security such as ports, airports, command parks and smart cities. It can also be expanded to be applied to big data security supervision and intelligent operation management in its fields. Security platform is a big data intelligent integration platform based on the Internet of Things. The video signal monitoring, danger warning, electronic fence boundary, electronic access control, security entrance control, electronic patrol and other subsystems are integrated to realize data fusion and establish intelligent linkage system. At the same time, it intelligently monitors, controls, records, and displays the operating status of various subsystems and equipment to realize intelligent safety supervision, linkage and joint defense, and provide timely and effective decision-making assistance for safety supervision and emergency command.
关键词:轨道交通;安防;SpringCloud;微服务;Docker
Key words: rail transit;security;SpringCloud;microservices;Docker
中图分类号:K875.3 文献标识码:A 文章编号:1006-4311(2021)01-0171-03
0 引言
近几十年来,国家经济腾飞,城市化进程不断推进,为了提供人民生活水平,提供出行效率,使得城市轨道交通得到快速的发展。与此同时轨道交通的安全与防护也就成为不可或缺的一部分。而近年来公共场所的恐怖极端事件频发,为应对日益紧张的安全局势,将安全防范综合管理平台系统纳入智能建筑设计标准,安防集成平台成为智能建筑重要的组成部分。港口、机场、智慧园区、智慧城市等安防重点领域纷纷开始响应国家安全工作部署,加强安全投入,建设安防集成平台,提高安防管理水平。
1 系统需求概述
根据《城市轨道交通公共安全防范系统工程技术规范》GB 51151-2016,建立一整套集成了视频监控管理、危险警告、电子围栏边界、电子门禁控制、安检出入口控制、出入口控制子系统和电子巡查子系统的城市轨道交通安防系统。安防平台功能主要分为站点级、线路中心级、路网中心级三个管理维度。平台由站点级、线路中心级和路网中心级构成,站点级平台实现车站、车辆段、停车场、变电所管辖区域的安防管理,线路中心级平台实现同一线路所有站点的安防管理与协调,路网中心级平台实现整个城市区域内全部线路所有站点的安防管理与协调。
安防平台系统为站点提供全方位的防护措施,系统通过手持设备、闸门、红外以及视频等载体采集信息,按目标类型和目标属性不同,在系统中以不同颜色和种类的显示,形成安防立体图。系统还对用户进行身份验证,支持团队间信息协同,并提供相关功能。此外,系统对各个服务器环境下的服务进行监控,具有高可用性、可靠性等,且用户可以对服务状态进行管理和查看。
路网、线路和站点级系统在功能上相似度较高,但在数据管控范围、具体功能实现上仍有差异,站点级系统功能重点在本级业务处理和设备管控、线路/路网级系统功能不但支持对各级站点的业务信息进行监控,也支持对各站点的终端设备进行直接操控。对安防平台系统整体需求整理如图 1 所示。
通过各站点的基层安防业务监控功能、配合路网/线路级上层监管和远程协助,打造交通轨道安防立体网络。安防集成平台的视频图像结构化应满足《GAT_1400-2017公安视频图像信息应用系统》的要求,应提供开放的结构化数据,满足主流视频分析厂家的视频分析需求。
2 系统架构设计
安防平台基于分布式架构模式,采用微服务框架,提供去中心化技术治理、去中心化数据管理以及快速迭代产品的思想,利用高度封装安全性的SpringBoot快速开发平台。平台技术可以支持入口统一、数据共享互通、实时准确、同时支持PC和移动端,可以保证系统的完整性、安全性和自主性,并兼顾设计和运营模式的包容性和开放性。
2.1 微服务架构
微服务其旨是在拆分服务,实现快速开发和独立部署。服务之间通过基于HTTP/HTTPS协议或者RPC协议进行通信协作。简单来说,被拆分的每一个服务都是围绕系统某一块核心业务的内聚,一般来说这些服务产生的都是基于HTTP协议的API资源,并且这些服务是可以独立部署,并且服务可以使用的开发语言与资源存储技术不受限制。
服务拆分是微服务的一个关键步骤,每一个拆分的维度对应不同的视角,拆分一般有两个基本原则,其一是分析业务模型形成低耦合高内聚的服务,其二是确定各个服务的边界。因此,系统采用微服务技术框架进行开发,分散了系统的复杂度,把一个体量巨大的单一系统分解成一个一个的微型服务,通过服务之间的相互通信完成总体功能不变,同时,让每个服务独立进行开发与部署。微服务架构示意图如图2所示。
2.2 高性能微服务开发框架
SpringBoot是Spring项目中的子项目。零配置构建SpringMvc项目,内置Tomcat容器,整合了Servlet增加了一个侵入式的抽象WebMvcConfigurer,整合了MySql、Web、JDBC、TST、IOC、DI、REDIS、AOP等大量的JAR,基于约定的开发模式。
SpringCloud 是Pivotal开发团队推出的简易分布式系统模式,可以简单便捷的搭建微服务,如服务注册与发现、服务监控等。通过SpringBoot风格进行的再封装,其屏蔽掉了模块的复杂的配置和内部实现原理,做到对项目的快速启动和部署。
2.3 CI/CD持续集成与持续交付
在系统使用微服务架构之后,系统部署与维护复杂度直线上升。一般的分布式系统都是集群可靠部署,一个服务都会是一个Master多个Slave的集群部署方式,当其中一个服务修改业务之后,我们面临的是该服务的Server都需要更新,在多个服务时,那么面临的工作是非常巨大的。对此CI/CD应运而生,CI/CD是在应用程序开发阶段就配置自动化测试流程与服务器地址,最后将应用程序推送到应用服务器安装与部署。CI/CD的核心概念是持续集成、持续交付与持续部署。在持续交付与持续部署中,每个阶段都涉及测试自动化和代码发布自动化。在流程结束时,运维团队可以可视化、简便的将应用部署到生产环境中。CI/CD系统架构如图3。
2.4 应用架构说明
安防平台是一个集成系统,整合了视频监控管理、危险警告、电子围栏边界、电子门禁控制、安检出入口控制、出入口控制子系统和电子巡查系统,为了突破传统安防的局限性,提高平台的稳定性、连续性和高可用性,整体架构包括基础设施层层、软网关层、服务层和门户应用层,通过由下及上构建当前安防平台完善的整体结构,如图4所示。
基础设施层:平台运行的必要软硬件,其中终端各类智能感知设备和设备自身的信号收发平台两部分,所有智能设备信息感知、数据采集和传输、指令响应和操作结果都基于设备层存在而进行扩展,另外还包括机房基础设施,服务器,网络通信设备和相关软件环境等。
软网网关层:软网关层是连接硬件设备和应用系统之间的中间桥梁,该网关层存在的主要目的包括:降低应用程序和硬件设备耦合性、提高设备接入的灵活性和扩展性、增加系统整体代码逻辑性。
服务层:服务层是安防集成平台承上启下的核心部分,主要分两部分:微服务和中间件/组件服务。
门户应用层:应用层根据不同部署节点分为站点级平台和线路/路网级平台,其中:
①站点级平台的功能独立运行,并独立控制各个站点前端的设备,包括站点本级基本信息的配置和管理、本级设备的操控、现场安防监控和感知、报警信息提示和处理等。
②线路/路网级平台作为独立部署的上层监管系统,既可对下级所有站点实施监管,也可直接访问下级所有站点子系统。因此在应用层,线路/路网级平台不但有自身的功能,也包括站点级系统的所有功能。
不论是站点级平台,还是线路/路网级平台,用户都可通过各子模块入口访问各安防子模块功能,如视频监控管理、出入口控制系统等,每个子模块都有大量业务,都是通过Java和Vue开发的B/S架构的功能来实现。
2.5 技术线路设计
平台的前端采用开源的JavaScript框架Vue2.0构建,平台后端采用业内主流的SpringCloud作为基础实现微服务架构,使用MyBatis连接系统与数据库,采用MySql数据库对各类基础报警信息、视频监控数据、出入口控制数据、入侵报警数据、安全检查数据、设备数据以及应急资源数据等进行存储。平台采用REST软件架构风格进行设计实现。
平台整体微服务架如图5所示,每一个服务独立运行,所有服务都注册到Eureka组件中,各个服务采用HHTP资源API这样轻量级来互相通信,实现各个服务的高内聚、低耦合。
平台设计上采用MVVM前后端分离设计,后端以SpringCloud为主要开发架构,辅以Java等其他开发语言,形成一套良好的后端架构,不但能满足目前城市轨道交通安防平台的应用架构需要,而且可在该基础上进行智能安防设备、业务范围、产品后续管理的集成拓展,集成内容包括基础研发、组件研发、设备接入、质量监控、持续集成、自动化运维、可视化体验设计和知识积累等方面。其中基础研发作为系统技术选型、解决方案的基础,在研发开始就提供了完整的架构和设计思路;质量监控平台和持续集成能力为系统交付和运维保驾护航;高效的自动化运维平台在实施过程中则充分提高了运维水平、降低运维成本以及后续的运维事件预警处理。
通过技术架构在应用层、服务层、软网关层、CI/CD集成几个方面的适用性,该技术架构可以达到完全支持安防平台应用实现和扩展的目的。
3 结论
本文描述了SpringCloud微服务架构,微服务的出现极大的冲击了传统单体架构开发模式,在开发过程中表现层逻辑通过服务与进行交互实现,服务比较独立,服务之间的交互只需要暴露接口,大大降低系统耦合度,实现过程中分工明确也提高代码的重用性。
轨道交通安防平台建成后,为轨道交通提供安全防范可视化及时发现和防范安防事件,处置相应智能化应急预案,无缝融合应急指挥功能,提高安防事件处置效率,分析预测科学化构建安防大数据分析和预防系统,全面分析和预测安防事件发展趋势,提前部署消除安全隐患,业务定制灵活化强大的图形化组态能力,灵活定制安防业务,因地制宜建设轨道安防,将为安防平台应用提供基础服务、数据服务等服务资源。
参考文献:
[1]何伟.《城市轨道交通公共安全防范系统工程技术规范》的意义[J].城市轨道交通研究,2011,14(S1):13,15.
[2]蔡佳恒,丁庄庄.浅谈地铁安防监控的现状及发展趋势[J].科技风,2015(10):94.
[3]赵成.安全防范系统风险及效能评估研究[D].山东建筑大学,2016.
[4]张晓武.城市轨道交通安防集成平台建设方案[J].城市轨道交通研究,2018,21(S2):20-21.
[5]李鹏.车辆调度系统在城市轨道交通中的应用分析[J].工程建设与设计,2020(20):90-91.
[6]王亮,苏毅.城市轨道交通车辆段综合开发规划设计初探[J].工程建设与设计,2020(21):112-114.
[7]张义鑫,张炳森.轨道交通线网智能运维系统的设计方案思考[J].铁路通信信号工程技术,2020,17(10):58-62.
[8]施凌鹏,朱征,周俊松,李鑫,李静.面向微服务架构的云系统负载均衡机制[J/OL].计算机工程:1-9[2020-11-06].https://doi.org/10.19678/j.issn.1000-3428.0058747. |