文章编号:1005-8451(2005)06-0028-03收稿日期:2004-12-22作者简介:牛红霞,讲师。
第14卷第6期Vol.14 No.6管理与维护MANAGEMENT AND MAINTENANCERAILWAYCOMPUTERAPPLICATION车辆安全检测和管理系统的设计与实现牛红霞(郑州铁路职业技术学院信息工程系, 郑州450052 )摘要:分析海量数据传输和管理系统的功能,并针对系统特点提出了基于C/S和B/S混合结构的解决方案,最后介绍了系统的设计与实现。
关键词:海量数据传输和管理系统;C/S结构;B/S结构;面向对象中图分类号: U271∶TP216文献标识码: ADesign and implementation of Giant Data Transmission and Management Systembased on C/S and B/S combined structureNIU H ong-xia(Zhengzhou Railway Vocationa and Technical College, Zhengzhou450052, China) Abstract: It was analyzed the function of Giant Data Transmission and Management System, and given the scheme based on C/S and B/S combined structure. Finally the design and implementation of the System were introduced.Key words:Giant Data Transmission and Management System; C/S structure; B/S structure; object-oriented 铁路安全检测与管理包括统计局管内的列出数量,检测与跟踪列车设备状态,完成如对列车的轴温分析、热轴跟踪与报警等数据分析,并向相关部门提供热轴预报等数据。
铁路这一大联动机要24 h不间断运行,安全检测必须实时、准确和不间断,否则就有可能发生重大安全事故,而现有的检测手段已不能满足现代化运输的要求。
因此,研究设计了一套全新的基于C/S和B/S混合结构的海量数据传输和管理系统,该系统有如下特点:(1)传输数据量大;(2)实时性要求高;(3)安全性要求高。
1系统功能分析1.1数据传输和分发子系统功能数据传输和分发子系统的功能主要是完成客户端数据的接收、分发和存储。
它接收各客户端的各通过列车车辆的探测数据和探测站设备状态实时数据,并把各种数据存入数据库,同时向其他原铁路分局、总局和所属单位转发数据。
该子系统具有传输数据量大,实时性要求高,安全性要求高的特点。
1.2 数据管理子系统功能数据管理子系统,主要用于铁路内部工作人员的综合业务管理。
基本功能详述如下。
1.2.1数据查询与统计功能为不同类型的用户、管理职能部门分配不同的管理权限和密码,根据不同的权限和密码实现对列车数据和设备状态数据的查询与统计。
1.2.2 数据分析功能对原始列车数据和设备状态数据进行分析整理,得出结论,完成对列车的轴温分析、热轴报警、热轴预报、热轴跟踪和设备状态故障检查、故障报警以及报表打印等业务的处理。
必要时上报上级业务主管部门,给领导提供决策支持。
1.2.3用户管理功能对管理职能部门的用户进行管理,可以进行删除、添加、修改用户密码和口令等。
1.3 数据库管理子系统功能数据库管理子系统完成对数据库的搬迁和删除记录,生成报表等功能。
2系统架构设计和运行开发环境选择针对客户端地理位置上分布散的特点和不影响传输速度的前提要求,在系统设计上采用了以广域网为系统平台的C/S和B/S的复合软件结构,如图1所示。
3.1.1数据传输和分发子系统功能的实现数据传输和分发子系统在设计中采用了面向对象、多线程等先进技术。
使用面向对象技术完成了通信软件的分析与设计;使用多线程技术完成了探测站(客户端)到原铁路分局中心(服务器端),原铁路分局中心间,原铁路分局中心到铁路局中心,原铁路分局中心到段中心的数据的准确、实时、高效和安全传输,其中原铁路分局间互为客户端和服务器。
所需传输数据主要是列车探测数据和探测设备状态数据的特点,采用面向对象技术,研究设计封装了如下对象:(1)列车探测数据:列车类(CTrain-Class)、车辆数据类(CVVehicleData)、车轴数据类(WheelbaseData)、轴承数据类(CAx- letreeData)、热轴数据类(CHotAxleData)和过车设备自检类(CDynamicCheckData);(2)探测设备状态数据:故障数据类(CFailureData)、故障恢复数据类(CFailure-ResumeData)和定时自检类(CStaticCheckData)。
一列列车是由不同数量车辆构成,车辆由不同数量的车轴组成,通过这种组合关系,可以完整描述各探测站过车列车数据;同时列车又客货有别,车辆有机车和非机车之分,通过面向对象的继承技术解决这一差别。
共研究设计封装了20多个对象。
由于要把接收数据存入数据库,提供了和数据库的接口,设计了如下表结构:列车表数据结构、列车统计值表结构、车辆表结构、轴承表结构、波形表结构、轮距表结构、过车自检数据表结构、过车设备状态表结构、定时自检数据表结构、定时自检设备状态表结构、故障表结构和热轴处理表数据结构等12个数据结构。
数据传输和分发子系统的物理架构如图4所示。
海量数据传输和管理系统探测站到原铁路分局中心采用C/S结构,分为客户端软件和服务器端软件,他们分别用各自的配置文件初始化。
如图2所示。
数据管理子系统采用B/S结构,使用3层结构,结构如图3所示。
图2C/S结构的数据传输和分发子系统图3B/S结构的数据管理子系统应用层提供应用程序的用户界面,负责与用户交互,他根据用户的操作调用相应的中间层逻辑,但不能直接访问后台数据库;中间层(应用服务器)是应用系统的关键,它负责处理用户请求,进行具体的运算和决定程序的流程,并把处理的结果返回给应用层;数据层(数据访问部分)提供对数据库的支持、维护和更新应用程序的数据。
系统的运行平台采用的Window 2000 Server作为原铁路分局中心(服务器端)的操作系统;采用Orcale9i作为整个应用系统的统一数据库;B/S结构的数据管理子系统采用ADO(ActiveX Data Object)连接数据库,提供对数据库的访问。
客户端采用ASP.net和Dreamweaver作为动态页面和静态页面的开发工具。
中间层由VC/VB开发。
数据传输和分发子系统的客户端和服务器端的软件采用VisiualC++6.0作为开发工具。
3 系统的实现及特点3.1系统功能的实现图1海量数据传输和管理系统软件体系结构图4数据传输和分发子系统的物理架构尽管采用了面向对象和多线程技术,但由于数据传输和分发子系统的结构复杂,探测站(客户端)数量巨大,原铁路分局中心不但负责自己的各探测车辆安全检测和管理系统的设计与实现管理与维护第14卷第6期系统选用Windows 2000作为网络操作系统、Oracle9i作为数据库管理系统,IIS5.0作为Web服务器软件,保证系统具有良好的开放性和安全性。
3.3.3可伸缩性强数据传输和分发子系统和数据库管理子系统只需通过修改配置文件而不需修改代码就可适应新的应用需求。
数据管理子系统只需通过修改配置文件和MTS结构的配置而不需修改代码就可适应新的应用需求。
3.3.4 运行速度快,稳定性好系统核心部分采用C/C++开发设计,代码效率高;充分使用面向对象技术、多线程技术和物理布局上的均分方法,运行速度快,稳定性好。
3.3.5 可扩展性强系统核心部分采用C/C++开发设计,充分使用面向对象技术;数据管理子系统使用中间层组件(应用服务器)技术,当用户需求改变时,开发人员只需使用C++的继承、重载、多态特性和改变中间层组件(应用服务器)业务逻辑,即可更新应用。
4结束语海量数据传输和管理系统是一个传输数据量大,实时性要求高,安全性要求高的系统,它集成了面向对象技术、多线程技术和COM/DCOM技术,并已得到应用,取得了良好的使用效果,但由于时间和技术的关系,还存在一些不足,需进一步完善和提高。
同时在开发过程中也积累了大量的经验,所需要解决的重点技术是海量数据传输和分发的多线程技术和网络安全及数据一致性技术,这是海量数据传输和分发系统开发的关键,因此该系统的开发和设计为其他类似系统提供了有益的尝试。
如有不当之处,请批评指正。
参考文献:[1]陈奇. 面向对象程序设计高级教程[M]. 北京:高等教育出版社,2002,8.[2]Bruche Ecke. C++编程思想[M]. 北京:电子工业出版社,2003,4.[3]Bjarne Stroustrup. The C++ Programming Language[M]. 北京:高等教育出版社,2003,4.[4]王瑜,余鹏. Delphi程序设计教程[M]. 北京:电子工业出版社,2003,2.站(客户端)数据接收、存储,而且还负责向其他原铁路分局中心、铁路局中心和段中心转发数据,其负担过重,因此在物理上采用均分探测站(客户端)方法,即在原铁路分局中心根据其所连探测站(客户端)数量,均分探测站(客户端)到不同的计算机(服务器),数个计算机(服务器)组成小型局域网,共享同一数据库。
通过使用以上技术和方法,使系统无论从软件结构或在物理结构上更加趋于合理,使系统的各项性能指标完全满足甚至超过设计要求。
一辆列车数据的转输从探测站到原铁路分局中心一般不超过20 s,原铁路分局中心到相临原铁路分局中心一般不超过10 s,原铁路分局中心到铁路局、段中心一般不超过10 s(使用10/100MB/s以太网)。
3.1.2数据管理子系统功能的实现数据管理子系统功能的实现之所以采用B/S结构,主要由于它用于铁路部门内部工作人员的综合业务管理。
B/S结构界面直观、友好,便于内部工作人员处理内部业务。
从数据管理子系统,主要做了连接客户端与后台服务器的中间业务层的建设。
通过对业务需求的分析与总结,系统实现的组件主要有以下3种:(1)数据查询与统计组件;(2)数据分析组件;(3)用户管理组件。
3.1.3数据库管理子系统功能的实现数据库管理子系统功能的实现,我们采用Del-phi6.0完成,主要是考虑到Delphi6.0对数据库的支持、操作功能强,界面易于开发设计。
3.2系统安全性实现对于系统的安全性考虑,选用安全性较高的Windows 2000 Server作为系统运行平台,并且系统补丁升级到SP2。