CN112668027A - 用于分布式系统的数据下装方法、tias系统数据下装方法 - Google Patents

用于分布式系统的数据下装方法、tias系统数据下装方法 Download PDF

Info

Publication number
CN112668027A
CN112668027A CN202110001863.0A CN202110001863A CN112668027A CN 112668027 A CN112668027 A CN 112668027A CN 202110001863 A CN202110001863 A CN 202110001863A CN 112668027 A CN112668027 A CN 112668027A
Authority
CN
China
Prior art keywords
file
downloading
data
download
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110001863.0A
Other languages
English (en)
Inventor
尹龙龙
徐磊
崔延青
李鲲鹏
李文正
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CRRC Qingdao Sifang Rolling Stock Research Institute Co Ltd
Original Assignee
CRRC Qingdao Sifang Rolling Stock Research Institute Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CRRC Qingdao Sifang Rolling Stock Research Institute Co Ltd filed Critical CRRC Qingdao Sifang Rolling Stock Research Institute Co Ltd
Priority to CN202110001863.0A priority Critical patent/CN112668027A/zh
Publication of CN112668027A publication Critical patent/CN112668027A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种用于分布式系统的数据下装方法、TIAS系统数据下装方法,在下装服务和下装代理服务中采用多线程技术,多线程并发进行下装文件的上传和获取过程,数据下装方法具体包括:在配置服务所在工作站上通过离线组态程序的下装操作,将下装指令和下装范围通知给配置服务,配置服务将下装文件上传到每一个域配置的文件服务器,把下装文件从配置服务所在工作站下装到各域配置的文件服务器;各在线节点上运行自身配置的文件下装代理,检测文件服务器上的下装文件版本,当检测到有新的下装文件版本时,从文件服务器获取新的下装文件版本到本地在线节点。本发明的数据下装方法具有高响应性、安全性以及实时性,满足分布式系统海量数据下装要求。

Description

用于分布式系统的数据下装方法、TIAS系统数据下装方法
技术领域
本发明属于分布式系统技术领域,尤其涉及一种用于分布式系统的数据下装方法、TIAS系统数据下装方法。
背景技术
分布式系统是跨专业的分布式集成数据信息平台系统,集成多个子系统互联,适合大规模并行及多模式方法耦合,具有网络容错能力强以及系统扩展灵活等优势。现有的分布式系统普遍采用分层分布式结构,在分布式网络中各个节点如何下装数据,从而保证网络中各个节点中获取同一版本的数据是系统调度需要考虑的重要因素。现有的数据下载方式普遍采用FTP的方式,但FTP方式存在如下缺陷:FTP软件没有内置加速技术,传输巨型文件和海量文件时需要很长时间,过程存在无故中断、传输文件内容不一致、传输文件丢失等问题;且FTP传输的过程没有可视化的显示记录,没有便于理解的审计日志根据;FTP对于复杂网络特别是防火墙架构下,适用性较差;同时,普通的FTP没有针对数据传输中或存储时的本地加密,有泄漏数据的潜在风险。而分布式系统中服务器和工作站数据庞大,下装的数据量大,面对大总量数据的下装要求,并且要求高响应性和实时性,因此FTP技术并不适用分布式系统,基于FTP架构的数据传输模式已经无法满足大型分布式系统的应用需求。
以地铁的行车指挥综合自动化系统(TIAS)为例,TIAS系统是一套跨专业的分布式集成数据信息平台系统,它以行车指挥为核心,集成ATS、PSCADA、BAS、FAS、UPS、PSD、PIS、PA、ACS、CLK、CCTV、AFC等业务专业互联,集成和互联了与行车指挥密切相关的专业子系统。地铁TIAS系统中服务器和工作站数据庞大,下装的数据量大,面对大总量数据的下装要求,并且要求高响应性和实时性,显然需要一种新的技术实现方式来满足TIAS系统需求,既能满足数据传输的及时、安全,准确等要求,又能实现数据备份同步分发的愿景。
发明内容
本发明在上述现有基于FTP数据下装方法不足的基础上提供了一种用于分布式系统的数据下装方法、TIAS系统数据下装方法,具有高响应性、实时性以及安全性。
为了实现上述目的,本发明提供了一种用于分布式系统的数据下装方法,在下装服务和下装代理服务中采用多线程技术,多线程并发进行下装文件的上传和获取过程,包括:
在配置服务所在工作站上通过离线组态程序的下装操作,将下装指令和下装范围通知给配置服务,配置服务将下装文件上传到每一个域配置的文件服务器,把下装文件从配置服务所在工作站下装到各域配置的文件服务器;
各在线节点上运行自身配置的文件下装代理,检测文件服务器上的下装文件版本,当检测到有新的下装文件版本时,从文件服务器获取新的下装文件版本到本地在线节点。
优选的,采用PutFile方法上传下装文件,供配置服务获取其他服务程序使用,使其能将下装文件上传到文件服务器;涉及的参数信息包括下装文件路径、文件类型、是否是第一包传输数据、是否是最后一包传输数据、文件数据信息、包括文件数据、数据的MD5码、文件的MD5码。
优选的,采用PutFile方法上传下装文件的方法具体为:
连接本域中所有在线节点的下装代理及冗余机,将本机IP通知给下装代理及冗余机;
在当前下装线程处于运行状态下,获取待上传的下装文件的文件类型与路径信息;
计算本次传输文件数据的MD5码,并判断文件数据信息中的本次传输文件数据的MD5码是否与本地计算的本次传输文件数据的MD5码相同;
若相同,则进一步判断本次传输的文件数据是否为第一包传输数据,若判断为第一包传输数据,则创建临时文件,并将本次传输文件数据写入创建的临时文件;若判断为不是第一包传输数据,则以追加方式打开临时文件,并将本次传输文件数据写入临时文件;
在判断本次传输的文件数据为接收的最后一包传输数据后,进一步计算临时文件的MD5码,并判断其是否与文件数据信息中的文件MD5码相同;
若相同,则将临时文件更名为本地正式文件,并结束下装文件上传过程。
优选的,在PutFile上传下装文件过程中,若判断为文件数据信息中的本次传输文件数据的MD5码与本地计算的本次传输文件数据的MD5码不相同,则返回错误信息;
若计算的临时文件的MD5码与文件数据信息中的文件MD5码不相同,则返回错误信息。
优选的,采用GetFile方法获取下装文件,供本地在线节点从文件服务器获取下装文件,涉及的参数信息包括下装文件路径、文件类型、要获取的文件数据在下装文件的起始位置、文件数据信息。
优选的,采用GetFile方法获取下装文件的方法具体为:
在当前下装线程处于运行状态下,获取下装文件的文件类型及路径信息;
获取下装文件的长度信息,并判断要获取的文件数据在该下装文件的起始位置信息是否大于下装文件的长度信息;
若否,则计算本次需传输的文件数据的长度;
从下装文件中读取本次传输的文件数据,并计算本次传输的文件数据的MD5码,并将本次传输的文件数据与其MD5码存入文件数据信息中;
在判断本次传输文件数据为接收的最后一包传输数据后,进一步计算整个下装文件的MD5码,并将整个下装文件的MD5码存入文件数据信息,并结束下装文件获取过程。
优选的,在GetFile获取下装文件过程中,若判断为要获取的文件数据在该下装文件的起始位置信息大于下装文件的长度信息,则返回错误信息。
本发明还提供了一种TIAS系统数据下装方法,分布式系统采用TIAS行车指挥综合自动化系统,TIAS系统数据下装方法采用所述的用于分布式系统的数据下装方法。
与现有技术相比,本发明的优点和积极效果在于:
本发明提供的数据下装方法,考虑了海量数据文件下装过程,适用于分布式系统,在下装服务和下装代理服务中采用多线程技术,从而保证了同时运行多个线程,多线程并发进行数据文件的上传和获取文件过程,传输效率有各个服务器上的应用服务来保证,不依赖FTP的机制,大大缩短了数据下装的时间,提高了下装数据的实时性;且考虑下装数据的版本,从而保证在分布式系统中的多个站点上数据版本的一致,避免数据版本不一致导致的异常问题。同时,本发明采用PutFile方法上传下装文件,供配置服务获取其他服务程序使用,使其能将下装文件上传到文件服务器,采用GetFile方法获取下装文件,供本地在线节点从文件服务器获取下装文件,在上传文件的文件中考虑的海量文件的分包上传,同时为了避免出现因网络不稳定造成的上传文件失败或者文件损坏情况的发生,采用多次传输,并寄存在临时文件,直至最后一次传输成功后才将文件保存为正式文件;并在获取文件的过程中也考虑了多次传输的机制,解决了下装数据过程存在无故中断、传输文件内容不一致、传输文件丢失等问题,保证了数据下装的可靠性。同时,数据下装过程中,采用MD5在线加密,保证了下装数据的数据安全。本发明提供的数据加装方法,也适用于城市轨道交通领域涉及安全运营的分布式系统,例如地铁的行车指挥综合自动化系统(TIAS),能够满足地铁TIAS系统中服务器和工作站数据庞大,下装的数据量大,面对大总量数据的下装要求,具有高响应性、实时性以及安全性等优势。
附图说明
图1为本发明的用于分布式系统的数据下装方法的文件下装数据流图;
图2为PutFile方法上传下装文件流程图;
图3为GetFile方法获取下装文件流程图。
具体实施方式
以下结合附图对本发明的具体实施方式进行进一步的描述。
如图1所示,本发明提供了一种用于分布式系统的数据下装方法,在下装服务和下装代理服务中采用多线程技术,以保证同时运行多个线程,多线程并发进行数据文件的上传和获取文件过程,其包括:
在配置服务所在工作站上通过离线组态程序的下装操作,将下装指令和下装范围通知给配置服务,配置服务将下装文件上传到每一个域配置的文件服务器,把下装文件从配置服务所在工作站下装到各域配置的文件服务器;
各在线节点上运行自身配置的文件下装代理,定期检测文件服务器上的下装文件版本,当检测到有新的下装文件版本时,从文件服务器获取新的下装文件版本到本地在线节点。
本实施例中具体采用PutFile方法上传下装文件,供配置服务获取其他服务程序使用,使其能将下装文件上传到文件服务器;采用GetFile方法获取下装文件,供本地在线节点从文件服务器获取下装文件。且为保证下装数据过程的安全,本实施例具体采用MD5码在线加密,MD5码能够防止数据在传输过程中被篡改,以检查文件的完整性,数据一旦被篡改,计算出的MD5值一定不同;且MD5码加密速度快,不需要秘钥,能防止看到明文。PutFile文件长传过程中涉及的主要参数信息包括下装文件路径、文件类型、是否是第一包传输数据、是否是最后一包传输数据、文件数据信息、包括文件数据、数据的MD5码、文件的MD5码等。GetFile文件获取过程中涉及的主要参数信息包括下装文件路径、文件类型、要获取的文件数据在下装文件的起始位置、文件数据信息等。
其中,PutFile方法上传下装文件流程如图2所示,具体为:
连接本域中所有在线节点的下装代理及冗余机,将本机IP通知给下装代理及冗余机;
在当前下装线程处于运行状态下,获取待上传的下装文件的文件类型与路径信息;
计算本次传输文件数据的MD5码,并判断文件数据信息中的本次传输文件数据的MD5码是否与本地计算的本次传输文件数据的MD5码相同;
若判断为文件数据信息中的本次传输的文件数据的MD5码与本地计算的本次传输文件数据的MD5码不相同,则返回错误信息;否则,则进一步判断本次传输的文件数据是否为第一包传输数据,若判断为第一包传输数据,则创建临时文件,并将本次传输文件数据写入创建的临时文件;若判断为不是第一包传输数据,则以追加方式打开临时文件,并将本次传输文件数据写入临时文件;
在判断本次传输的文件数据为接收的最后一包传输数据后,进一步计算临时文件的MD5码,并判断其是否与文件数据信息中的文件MD5码相同;
若计算的临时文件的MD5码与文件数据信息中的文件MD5码不相同,则返回错误信息;否则,则将临时文件更名为本地正式文件,并结束下装文件上传过程。
GetFile方法获取下装文件流程如图3所示,具体为:
在当前下装线程处于运行状态下,获取下装文件的文件类型及路径信息;
获取下装文件的长度信息,并判断要获取的文件数据在该下装文件的起始位置信息是否大于下装文件的长度信息;
若获取的文件数据在该下装文件的起始位置信息小于等于下装文件的长度信息,则计算本次需传输的文件数据的长度;否则则返回错误信息。
然后,从下装文件中读取本次传输的文件数据,并计算本次传输的文件数据的MD5码,并将本次传输的文件数据与其MD5码存入文件数据信息中;
在判断本次传输文件数据为接收的最后一包传输数据后,进一步计算整个下装文件的MD5码,并将整个下装文件的MD5码存入文件数据信息,并结束下装文件获取过程。
综上,本发明提供的数据下装方法,考虑了海量数据文件下装过程,适用于分布式系统,在下装服务和下装代理服务中采用多线程技术,从而保证了同时运行多个线程,多线程并发进行数据文件的上传和获取文件过程,传输效率有各个服务器上的应用服务来保证,不依赖FTP的机制,大大缩短了数据下装的时间,提高了下装数据的实时性;且考虑下装数据的版本,从而保证在分布式系统中的多个站点上数据版本的一致,避免数据版本不一致导致的异常问题。同时,本发明采用PutFile方法上传下装文件,供配置服务获取其他服务程序使用,使其能将下装文件上传到文件服务器,采用GetFile方法获取下装文件,供本地在线节点从文件服务器获取下装文件,在上传文件的文件中考虑的海量文件的分包上传,同时为了避免出现因网络不稳定造成的上传文件失败或者文件损坏情况的发生,采用多次传输,并寄存在临时文件,直至最后一次传输成功后才将文件保存为正式文件;并在获取文件的过程中也考虑了多次传输的机制,解决了下装数据过程存在无故中断、传输文件内容不一致、传输文件丢失等问题,保证了数据下装的可靠性。同时,数据下装过程中,采用MD5在线加密,保证了下装数据的数据安全。本发明提供的数据加装方法,也适用于城市轨道交通领域涉及安全运营的分布式系统,例如地铁的行车指挥综合自动化系统(TIAS),能够满足地铁TIAS系统中服务器和工作站数据庞大,下装的数据量大,面对大总量数据的下装要求,具有高响应性、实时性以及安全性等优势。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例应用于其它领域,但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

Claims (8)

1.一种用于分布式系统的数据下装方法,其特征在于,在下装服务和下装代理服务中采用多线程技术,多线程并发进行下装文件的上传和获取过程,包括:
在配置服务所在工作站上通过离线组态程序的下装操作,将下装指令和下装范围通知给配置服务,配置服务将下装文件上传到每一个域配置的文件服务器,把下装文件从配置服务所在工作站下装到各域配置的文件服务器;
各在线节点上运行自身配置的文件下装代理,检测文件服务器上的下装文件版本,当检测到有新的下装文件版本时,从文件服务器获取新的下装文件版本到本地在线节点。
2.根据权利要求1所述的用于分布式系统的数据下装方法,其特征在于,采用PutFile方法上传下装文件,供配置服务获取其他服务程序使用,使其能将下装文件上传到文件服务器;涉及的参数信息包括下装文件路径、文件类型、是否是第一包传输数据、是否是最后一包传输数据、文件数据信息、包括文件数据、数据的MD5码、文件的MD5码。
3.根据权利要求2所述的用于分布式系统的数据下装方法,其特征在于,采用PutFile方法上传下装文件的方法具体为:
连接本域中所有在线节点的下装代理及冗余机,将本机IP通知给下装代理及冗余机;
在当前下装线程处于运行状态下,获取待上传的下装文件的文件类型与路径信息;
计算本次传输文件数据的MD5码,并判断文件数据信息中的本次传输文件数据的MD5码是否与本地计算的本次传输文件数据的MD5码相同;
若相同,则进一步判断本次传输的文件数据是否为第一包传输数据,若判断为第一包传输数据,则创建临时文件,并将本次传输文件数据写入创建的临时文件;若判断为不是第一包传输数据,则以追加方式打开临时文件,并将本次传输文件数据写入临时文件;
在判断本次传输的文件数据为接收的最后一包传输数据后,进一步计算临时文件的MD5码,并判断其是否与文件数据信息中的文件MD5码相同;
若相同,则将临时文件更名为本地正式文件,并结束下装文件上传过程。
4.根据权利要求3所述的用于分布式系统的数据下装方法,其特征在于,在PutFile上传下装文件过程中,若判断为文件数据信息中的本次传输文件数据的MD5码与本地计算的本次传输文件数据的MD5码不相同,则返回错误信息;
若计算的临时文件的MD5码与文件数据信息中的文件MD5码不相同,则返回错误信息。
5.根据权利要求3或4所述的用于分布式系统的数据下装方法,其特征在于,采用GetFile方法获取下装文件,供本地在线节点从文件服务器获取下装文件,涉及的参数信息包括下装文件路径、文件类型、要获取的文件数据在下装文件的起始位置、文件数据信息。
6.根据权利要求5所述的用于分布式系统的数据下装方法,其特征在于,采用GetFile方法获取下装文件的方法具体为:
在当前下装线程处于运行状态下,获取下装文件的文件类型及路径信息;
获取下装文件的长度信息,并判断要获取的文件数据在该下装文件的起始位置信息是否大于下装文件的长度信息;
若否,则计算本次需传输的文件数据的长度;
从下装文件中读取本次传输的文件数据,并计算本次传输的文件数据的MD5码,并将本次传输的文件数据与其MD5码存入文件数据信息中;
在判断本次传输文件数据为接收的最后一包传输数据后,进一步计算整个下装文件的MD5码,并将整个下装文件的MD5码存入文件数据信息,并结束下装文件获取过程。
7.根据权利要求6所述的用于分布式系统的数据下装方法,其特征在于,
在GetFile获取下装文件过程中,若判断为要获取的文件数据在该下装文件的起始位置信息大于下装文件的长度信息,则返回错误信息。
8.一种TIAS系统数据下装方法,其特征在于,分布式系统采用TIAS行车指挥综合自动化系统,TIAS系统数据下装方法采用权利要求1-7任一项所述的用于分布式系统的数据下装方法。
CN202110001863.0A 2021-01-04 2021-01-04 用于分布式系统的数据下装方法、tias系统数据下装方法 Pending CN112668027A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110001863.0A CN112668027A (zh) 2021-01-04 2021-01-04 用于分布式系统的数据下装方法、tias系统数据下装方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110001863.0A CN112668027A (zh) 2021-01-04 2021-01-04 用于分布式系统的数据下装方法、tias系统数据下装方法

Publications (1)

Publication Number Publication Date
CN112668027A true CN112668027A (zh) 2021-04-16

Family

ID=75412509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110001863.0A Pending CN112668027A (zh) 2021-01-04 2021-01-04 用于分布式系统的数据下装方法、tias系统数据下装方法

Country Status (1)

Country Link
CN (1) CN112668027A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090282133A1 (en) * 2008-05-12 2009-11-12 Mckesson Financial Holdings Limited System, apparatus, method and computer program product for configuring disparate workstations
CN104679530A (zh) * 2013-11-26 2015-06-03 英业达科技有限公司 服务器系统与固件更新方法
CN105245560A (zh) * 2014-07-11 2016-01-13 阿里巴巴集团控股有限公司 一种实现分布式缓存的方法、装置及系统
CN106528871A (zh) * 2016-12-06 2017-03-22 爱普(福建)科技有限公司 一种在线更新工业控制系统工程数据点信息的方法
CN109743349A (zh) * 2018-11-29 2019-05-10 比亚迪股份有限公司 基于轨道交通的文件管理方法、系统及其设备
CN110740188A (zh) * 2019-10-25 2020-01-31 北京浪潮数据技术有限公司 镜像文件上传方法、装置、设备及计算机可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090282133A1 (en) * 2008-05-12 2009-11-12 Mckesson Financial Holdings Limited System, apparatus, method and computer program product for configuring disparate workstations
CN104679530A (zh) * 2013-11-26 2015-06-03 英业达科技有限公司 服务器系统与固件更新方法
CN105245560A (zh) * 2014-07-11 2016-01-13 阿里巴巴集团控股有限公司 一种实现分布式缓存的方法、装置及系统
CN106528871A (zh) * 2016-12-06 2017-03-22 爱普(福建)科技有限公司 一种在线更新工业控制系统工程数据点信息的方法
CN109743349A (zh) * 2018-11-29 2019-05-10 比亚迪股份有限公司 基于轨道交通的文件管理方法、系统及其设备
CN110740188A (zh) * 2019-10-25 2020-01-31 北京浪潮数据技术有限公司 镜像文件上传方法、装置、设备及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谢红侠, 中国矿业大学出版社 *

Similar Documents

Publication Publication Date Title
CN109101364B (zh) 双中心双活数据处理系统和方法
CN109522363B (zh) 基于区块链的云平台同步方法、系统、设备及存储介质
CN108337303A (zh) 一种数据同步方法和分布式系统
CN110784495B (zh) 基于区块链的大数据集群系统的发现与配置信息管理方法
US20140372989A1 (en) Identification of a failed code change
CN105468393B (zh) 模块版本升级方法及终端装置
CN103916483A (zh) 一种针对编码冗余存储系统的自适应数据存储与重构方法
CN107026760A (zh) 一种故障修复方法及监控节点
CN109508295B (zh) 区块链共识算法测试方法、装置、计算装置和存储介质
US11615189B2 (en) Update of gateway in substation
CN110716538A (zh) 一种车辆诊断方法、装置、设备及可读存储介质
CN101266566B (zh) 多测试场景自动调度系统和方法
CN105472005B (zh) 一种地面atp设备远程更新方法及系统
CN112668027A (zh) 用于分布式系统的数据下装方法、tias系统数据下装方法
CN116700884A (zh) 快照回滚数据一致性测试方法、装置、设备及介质
CN114500254B (zh) 历史日志收集方法、装置与存储介质
CN117057913A (zh) 区块链管理方法、装置、计算机、存储介质及程序产品
CN117251354A (zh) 应用于区块链系统的异常测试方法、装置和计算机设备
WO2021057855A1 (zh) 程序进程监控的方法、装置、计算机设备及可读存储介质
CN105765908B (zh) 一种多站点自动更新方法、客户端和系统
CN111488306A (zh) 攻防架构系统及攻防架构系统的搭建方法
CN112558990A (zh) 一种车载安全计算机的维护升级方法及系统
CN102368268B (zh) 一种实现多元数据一致性的方法
CN111221672A (zh) 用于分布式存储系统的数据一致性校验方法及装置
CN117118986B (zh) 基于区块链的容错验证方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210416