CN111338643A - 一种跨主机跨网络同步代码的方法和系统 - Google Patents
一种跨主机跨网络同步代码的方法和系统 Download PDFInfo
- Publication number
- CN111338643A CN111338643A CN202010120579.0A CN202010120579A CN111338643A CN 111338643 A CN111338643 A CN 111338643A CN 202010120579 A CN202010120579 A CN 202010120579A CN 111338643 A CN111338643 A CN 111338643A
- Authority
- CN
- China
- Prior art keywords
- host
- synchronized
- file
- code
- application
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000001360 synchronised effect Effects 0.000 claims abstract description 176
- 238000004519 manufacturing process Methods 0.000 claims abstract description 31
- 238000012360 testing method Methods 0.000 claims abstract description 14
- 238000002955 isolation Methods 0.000 claims abstract description 12
- 238000009826 distribution Methods 0.000 claims description 70
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 210000001520 comb Anatomy 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012858 packaging process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种跨主机跨网络同步代码的方法和系统,首先,通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,然后,编译主机将所有的待同步代码文件通过接口主机分别同步至生产域的每个应用主机,在跨主机跨网络的情况下实现了在每个应用主机上的代码部署,且可通过文件列表对每个应用主机所同步的待同步代码文件进行校验,来保证代码部署的准确度。
Description
技术领域
本发明涉及同步代码文件的技术领域,尤其涉及一种跨主机跨网络同步代码的方法和系统。
背景技术
目前,在电信业中,测试域和生产域之间存在网络隔离,且生产域的多个应用主机为云化部署,测试域中的编译主机需将大量的待同步代码文件同步至多个应用主机上,因此,存在如何在跨主机跨网络的情况下进行代码部署的技术问题。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种跨主机跨网络同步代码的方法和系统。
本发明的一种跨主机跨网络同步代码的方法的技术方案如下:
通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,所述生产域还包括至少一个应用主机;
所述编译主机将每个所述待同步代码文件在每个所述应用主机上的同步路径梳理成文件列表,并将每个所述待同步代码文件和所述文件列表同步至所述接口主机;
所述接口主机根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上。
本发明的一种跨主机跨网络同步代码的方法的有益效果如下:
首先,通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,然后,编译主机将所有的待同步代码文件通过接口主机分别同步至生产域的每个应用主机,在跨主机跨网络的情况下实现了在每个应用主机上的代码部署,且可通过文件列表对每个应用主机所同步的待同步代码文件进行校验,来保证代码部署的准确度。
在上述方案的基础上,本发明的一种跨主机跨网络同步代码的方法还可以做如下改进。
进一步,所述生产域还包括分发主机,所述接口主机根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
所述接口主机将每个所述待同步代码文件和所述文件列表同步至所述分发主机;
所述分发主机根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上。
采用上述进一步方案的有益效果是:接口主机负责从编译主机中同步所有的待同步代码文件和文件列表,分发主机负责将所有的待同步代码文件分别同步至每个应用主机上,即接口主机和分发主机分工合作,有助于提高效率。
进一步,所述分发主机根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
所述分发主机通过同时启动预设数量的进程来将所有的待同步代码文件分别同步至每个所述应用主机上。
采用上述进一步方案的有益效果是:通过同时启动多个进程来将所有的待同步代码文件分别同步至每个应用主机上,效率高。
进一步,所述分发主机通过同时启动预设数量的进程将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;
所述分发主机同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个所述应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
采用上述进一步方案的有益效果是:通过对所有的待同步代码文件进行分组打包后形成了数量较少的打包文件,在启动相同数量的进程的情况下,减少了同步所耗费的时间,进一步提高了代码部署的效率,且为同步数量较多的待同步代码文件的实现提供了保证。
进一步,还包括:获取每个所述应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与所述分发主机上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。
采用上述进一步方案的有益效果是:通过对每个应用主机上所同步的每个待同步代码文件进行校验,保证代码部署的准确度。
本发明的一种跨主机跨网络同步代码的系统的技术方案如下:
包括单向打通模块、编译主机和接口主机;
所述单向打通模块用于通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,所述生产域还包括至少一个应用主机;
所述编译主机用于将每个所述待同步代码文件在每个所述应用主机上的同步路径梳理成文件列表,并将每个所述待同步代码文件和所述文件列表同步至所述接口主机;
所述接口主机根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上。
本发明的一种跨主机跨网络同步代码的系统的有益效果如下:
首先,单向打通模块通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,然后,编译主机将所有的待同步代码文件通过接口主机分别同步至生产域的每个应用主机,在跨主机跨网络的情况下实现了在每个应用主机上的代码部署,且可通过文件列表对每个应用主机所同步的待同步代码文件进行校验,来保证代码部署的准确度。
在上述方案的基础上,本发明的一种跨主机跨网络同步代码的系统还可以做如下改进。
进一步,所述生产域还包括分发主机,所述接口主机用于将每个所述待同步代码文件和所述文件列表同步至所述分发主机;
所述分发主机用于根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上。
采用上述进一步方案的有益效果是:接口主机负责从编译主机中同步所有的待同步代码文件和文件列表,分发主机负责将所有的待同步代码文件分别同步至每个应用主机上,即接口主机和分发主机分工合作,有助于提高效率。
进一步,所述分发主机具体用于通过同时启动预设数量的进程来将所有的待同步代码文件分别同步至每个所述应用主机上。
采用上述进一步方案的有益效果是:通过同时启动多个进程来将所有的待同步代码文件分别同步至每个应用主机上,效率高。
进一步,所述分发主机还用于根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;
所述分发主机具体用于同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个所述应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
采用上述进一步方案的有益效果是:通过对所有的待同步代码文件进行分组打包后形成了数量较少的打包文件,在启动相同数量的进程的情况下,减少了同步所耗费的时间,进一步提高了代码部署的效率,且为同步数量较多的待同步代码文件的实现提供了保证。
进一步,还包括:对比判断模块,所述对比判断模块用于获取每个所述应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与所述分发主机上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。
采用上述进一步方案的有益效果是:通过对比判断模块对每个应用主机上所同步的每个待同步代码文件进行校验,保证代码部署的准确度。
附图说明
图1为本发明实施例的一种跨主机跨网络同步代码的方法的流程示意图;
图2为本发明实施例的一种跨主机跨网络同步代码的方法的逻辑示意图;
图3为本发明实施例的一种跨主机跨网络同步代码的方法的结构示意图。
具体实施方式
如图1所示,本发明实施例的一种跨主机跨网络同步代码的方法,如图1所示,包括如下步骤:
S1、通过SFTP策略单向打通测试域1的编译主机4至生产域2的接口主机5之间的网络隔离3,所述生产域2还包括至少一个应用主机;
S2、编译主机4将每个待同步代码文件在每个应用主机上的同步路径梳理成文件列表,并将每个待同步代码文件和文件列表同步至接口主机5;
S3、接口主机5根据文件列表,将所有的待同步代码文件分别同步至每个应用主机上。
首先,通过SFTP策略单向打通测试域1的编译主机4至生产域2的接口主机5之间的网络隔离3,然后,编译主机4将所有的待同步代码文件通过接口主机5分别同步至生产域2的每个应用主机,在跨主机跨网络的情况下实现了在每个应用主机上的代码部署,且可通过文件列表对每个应用主机所同步的待同步代码文件进行校验,来保证代码部署的准确度。
其中,编译主机4、接口主机5和每个应用主机可均采用Windows操作系统或linux操作系统,然后在编译主机4、接口主机5和每个应用主机上安装expect编程工具语言来用于实现本申请中一种跨主机跨网络同步代码的方法中的各步骤。
待同步代码文件包括二进制文件的代码文件和写有代码的文本文件等。
如图2所示,假如有100个待同步代码文件,并将这100个待同步代码文件分别同步至3个应用主机上,3个应用主机分别为第一应用主机7、第二应用主机8和第三应用主机9,其中,文件列表和同步路径可做如下形式的理解:
1)可首先对100个待同步代码文件进行编号,分别为0001、0002……0100,假如将编号为0001的待同步代码文件同步在第一应用主机7上路径为:D盘中名称为“代码”的文件夹,即编号为0001的待同步代码文件在第一应用主机7上同步路径为D盘中名称为“代码”的文件夹,则将“0001的待同步代码文件,第一应用主机7,D盘中名称为“代码”的文件夹”信息保存至文件列表;
依次类推,生成包含有编号为0001、0002……0100的待同步代码文件同步在每个应用主机的同步路径等信息的文件列表。
2)用编号1代表这100个待同步代码文件,这100个待同步代码文件在同步在第一应用主机7上路径为:D盘中名称为“代码”的文件夹,即这100个待同步代码文件的在第一应用主机7上同步路径为D盘中名称为“代码”的文件夹,则将“编号1,第一应用主机7,D盘中名称为“代码”的文件夹”信息保存至文件列表;
依次类推,生成包含有编号1同步在每个应用主机的同步路径等信息的文件列表。
其中,可根据实际情况扩展至N个应用主机,其中,N为正整数。
其中,将所有的待同步代码文件分别同步至每个应用主机上时,如应用主机存在同步路径中的文件夹,则直接将所有的待同步代码文件进行同步,若否,则先创建与同步路径相应的文件夹后再进行同步。
其中,在编译主机4将所有的待同步代码文件和文件列表同步至接口主机5的过程中,具体为:
在接口主机5上设置路径保存所有的待同步代码文件和文件列表,例如将0001、0002……0100的待同步代码文件和文件列表保存在接口主机5的E盘中名称为“代码与文件列表”文件夹中,若在接口主机5的E盘中已存在名称为“代码与文件列表”文件夹,则直接将所有的待同步代码文件和文件列表同步至该文件夹中;若在接口主机5的E盘中不存在名称为“代码与文件列表”文件夹,则在接口主机5的E盘创建名称为“代码与文件列表”文件夹,再进行同步。
在另外一个实施例中,待编译主机4将所有的待同步代码文件和文件列表同步至接口主机5后,编译主机4再向接口主机5发送同步命令,使接口主机5根据文件列表,将所有的待同步代码文件分别同步至每个应用主机上。
也就是说,本申请的一种跨主机跨网络同步代码的方法包括双层循环,第一层循环为文件列表的记录,第二层循环为每个应用主机的列表;其中,待同步代码文件可产生于测试域1的编辑主机上,对需要同步的待同步代码文件按照应用主机的HOME的相对路径即各待同步代码文件的同步路径,梳理形成文件列表,再执行同步命令。
较优地,在上述技术方案中,如图2所示,所述生产域还包括分发主机,S3具体为:
S30、接口主机5将每个待同步代码文件和文件列表同步至分发主机6;
S31、分发主机6根据文件列表将所有的待同步代码文件分别同步至每个应用主机上。
接口主机5负责从编译主机4中同步所有的待同步代码文件和文件列表,分发主机6负责将所有的待同步代码文件分别同步至每个应用主机上,即接口主机5和分发主机6分工合作,有助于提高效率。
分发主机6根据编译主机4、接口主机5和每个应用主机的操作系统来采用Windows操作系统或linux操作系统,然后在分发主机6安装expect编程工具。
其中,在接口将所有的待同步代码文件和文件列表同步至分发主机6的过程中,具体为:
在分发主机6上设置路径保存所有的待同步代码文件和文件列表,例如将0001、0002……0100的待同步代码文件和文件列表保存在分发主机6的E盘中名称为“代码与文件列表-2”文件夹中,若在分发主机6的E盘中已存在名称为“代码与文件列表-2”文件夹,则直接将所有的待同步代码文件和文件列表同步至该文件夹中;若在分发主机6的E盘中不存在名称为“代码与文件列表-2”文件夹,则在分发主机6的E盘创建名称为“代码与文件列表-2”文件夹,再进行同步。
在另外一个实施例中,待接口主机5将所有的待同步代码文件和文件列表同步至分发主机6后,编译主机4或接口主机5再向分发主机6发送同步命令,使分发主机6根据文件列表,将所有的待同步代码文件分别同步至每个应用主机上。
较优地,在上述技术方案中,S31具体为:
S310、分发主机6通过同时启动预设数量的进程来将所有的待同步代码文件分别同步至每个应用主机上。
在上述各实施例中:
1)编译主机4与接口主机5之间、接口主机5与分发主机6之间均为单主机多待同步代码文件的同步,同步时间的长短取决于多待同步代码文件的数量;
2)从分发主机6与每个应用主机之间为多主机多待同步代码文件的同步,其同步时间的长短取决于多待同步代码文件的数量和应用主机的数量,通过同时启动多个进程来将所有的待同步代码文件分别同步至每个应用主机上,效率高,预设数量可理解为:
将预设数量设置为30,对应第一应用主机7、第二应用主机8和第三应用主机9的进程数量为10个,假设同步1个待同步代码文件的时间为5秒,则需50秒就可将100个待同步代码文件分别同步至第一应用主机7、第二应用主机8和第三应用主机9,也可通过人为调整将预设数量给不同应用主机分配不同的进程数量,且启动的多个进程在后台挂起执行,若还以单进程向每个应用主机进行同步,则同步待同步代码文件的时间为1500秒,由此可见,本实施例中的一种跨主机跨网络同步代码的方法极大的提高了同步待同步代码文件的效率。
其中,启动数量可根据实际情况如分发主机6的CPU的计算能力等进行调整,并可对正在执行进程的数量配套可达秒级的监控,若监测到同时启动的进程数量小于30个时,则继续启动进程,直到所有的待同步代码文件同步完毕后退出监控,并结束所有进程。
较优地,在上述技术方案中,S310具体为:
S3100、根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;
S3101、所述分发主机6同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个所述应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
通过对所有的待同步代码文件进行分组打包后形成了数量较少的打包文件,在启动相同数量的进程的情况下,减少了同步所耗费的时间,进一步提高了代码部署的效率,且为同步数量较多的待同步代码文件的实现提供了保证。
假设一次同步500个、800个、1000个等以及数量更多的待同步代码文件,即便分发主机6能同时启动30个进程进行同步,但也会非常耗时,以编译主机4、接口主机5、分发主机6和每个应用主机均采用或linux操作系统为例对预设配置进行说明:
在执行同步时,可将所有的待同步代码文件执行linux的压缩解压命令tar,具体地:压缩解压命令tar根据每个待同步代码文件所对应的配置文件PROJECTS的工程名称,将所有的待同步代码文件按照工程名称打包进行分类打包,例如:假设600个待同步代码文件中每10个对应一个工程名称,则将600分为60组,即打包文件的数量为60,若同步一个打包文件的时间为5秒,且分发主机6启动进行数量为30个,则需30秒完成同步,而未对所有的待同步代码文件进行分组打包就进行同步时,同步一个待同步代码文件的时间也为5秒,则需耗时300秒,可见,对所有的待同步代码文件进行分组打包再进行同步时,则极大节省了同步所需时间,提高效率。
其中,由于已将所有的待同步代码文件生成多个相应的打包文件,将每个打包文件在每个所述应用主机上的同步路径梳理成打包文件列表,当分发主机6根据打包文件列表将所有的打包文件根据分别同步至每个应用主机上后,先根据打包文件列表,将每个打包文件进行备份后再解包;如果需要查看备份的打包文件或回滚本次同步,可根据工程名字,在生产域2的分发主机6上向每个应用主机发送查看命令或回滚命令,且通过提供回滚命令,保证每个打包文件在每个应用主机上进行同步的可逆性。
其中,打包文件列表可参照上述的文件列表在此不做赘述。
在另外一个实施例中,预设配置还可理解为:可设置预设阈值来判断是否对所有的待同步代码文件进行分组打包,如将预设阈值设置为100、200等,当所有的待同步代码文件的数量超过预设阈值时,则对其进行分组打包,且对所有的待同步代码文件的分组打包过程可在编译主机4、接口主机5或分发主机6中执行;
在另外一个实施例中,预设配置还可理解为:对所有的待同步代码文件进行随机平均分组后打包,例如,将500个待同步代码文件平均分为100组,进而形成100个打包文件。
在另外一个实施例中,例如有1000个待同步代码文件,在接口主机5中对其进行第一次分组打包形成400个打包文件并发送至分发主机6,分发主机6对400个打包文件进行第二次分组后生成100个打包文件,然后再将这100个打包文件分别发送至每个应用主机上,然后在各应用主机上进行两次解包,得到1000个待同步代码文件。
较优地,在上述技术方案中,还包括:
S4、获取每个所述应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与所述分发主机6上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。通过对每个应用主机上所同步的每个待同步代码文件进行校验,保证代码部署的准确度。
本申请的一种跨主机跨网络同步代码的方法,支持多工程名称、多待同步代码文件在跨主机跨网络情况下的的同步,其中各种同步的执行命令统一、简单,且能保证待同步代码文件的同步效率和准确性。此外,可在编译主机4、接口主机5、分发主机6和每个应用主机上根据上述各步骤部署对应的脚本文件,来执行其相应的同步操作。
在上述各实施例中,虽然对步骤进行进行了编号S1、S2等,但只是本申请给出的具体实施例,本领域的技术人员可根据实际情况对调整S1、S2等的执行顺序,此也在本发明的保护范围内。
如图3所示,本发明实施例的一种跨主机跨网络同步代码的系统200,包括单向打通模块210、编译主机220和接口主机230;
单向打通模块210用于通过SFTP策略单向打通测试域的编译主机220至生产域的接口主机230之间的网络隔离3,生产域还包括至少一个应用主机;
编译主机220用于将每个待同步代码文件在每个应用主机上的同步路径梳理成文件列表,并将每个待同步代码文件和文件列表同步至接口主机230;
接口主机230用于根据文件列表,将所有的待同步代码文件分别同步至每个应用主机上。
首先,单向打通模块210通过SFTP策略单向打通测试域的编译主机220至生产域的接口主机230之间的网络隔离3,然后,编译主机220将所有的待同步代码文件通过接口主机230分别同步至生产域的每个应用主机,在跨主机跨网络的情况下实现了在每个应用主机上的代码部署,且可通过文件列表对每个应用主机所同步的待同步代码文件进行校验,来保证代码部署的准确度。
较优地,在上述技术方案中,所述生产域还包括分发主机,接口主机230用于将每个待同步代码文件和文件列表同步至分发主机;
分发主机用于根据文件列表将所有的待同步代码文件分别同步至每个应用主机上。
接口主机230负责从编译主机220中同步所有的待同步代码文件和文件列表,分发主机负责将所有的待同步代码文件分别同步至每个应用主机上,即接口主机230和分发主机分工合作,有助于提高效率。
较优地,在上述技术方案中,分发主机具体用于通过同时启动预设数量的进程来将所有的待同步代码文件分别同步至每个应用主机上。
通过同时启动多个进程来将所有的待同步代码文件分别同步至每个应用主机上,效率高。
较优地,在上述技术方案中,分发主机还用于根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;分发主机具体用于同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
通过对所有的待同步代码文件进行分组打包后形成了数量较少的打包文件,在启动相同数量的进程的情况下,减少了同步所耗费的时间,进一步提高了代码部署的效率,且为同步数量较多的待同步代码文件的实现提供了保证。
较优地,在上述技术方案中,还包括:对比判断模块,对比判断模块用于根据文件列表获取每个应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与分发主机上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。
通过对比判断模块对每个应用主机上所同步的每个待同步代码文件进行校验,保证代码部署的准确度。
上述关于本发明的一种跨主机跨网络同步代码的系统200的各模块的作用,可参考上文中关于一种跨主机跨网络同步代码的方法的各实施例,在此不做赘述。
在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种跨主机跨网络同步代码的方法,其特征在于,包括如下步骤:
通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,所述生产域还包括至少一个应用主机;
所述编译主机将每个待同步代码文件在每个所述应用主机上的同步路径梳理成文件列表,并将每个所述待同步代码文件和所述文件列表同步至所述接口主机;
所述接口主机根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上。
2.根据权利要求1所述的一种跨主机跨网络同步代码的方法,其特征在于,所述生产域还包括分发主机,所述接口主机根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
所述接口主机将每个所述待同步代码文件和所述文件列表同步至所述分发主机;
所述分发主机根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上。
3.根据权利要求2所述的一种跨主机跨网络同步代码的方法,其特征在于,所述分发主机根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
所述分发主机通过同时启动预设数量的进程将所有的待同步代码文件分别同步至每个所述应用主机上。
4.根据权利要求3所述的一种跨主机跨网络同步代码的方法,其特征在于,所述分发主机通过同时启动预设数量的进程将所有的待同步代码文件分别同步至每个所述应用主机上,包括:
根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;
所述分发主机同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个所述应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
5.根据权利要求2至4任一项所述的一种跨主机跨网络同步代码的方法,其特征在于,还包括:
获取每个所述应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与所述分发主机上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。
6.一种跨主机跨网络同步代码的系统,其特征在于,包括单向打通模块、编译主机和接口主机;
所述单向打通模块用于通过SFTP策略单向打通测试域的编译主机至生产域的接口主机之间的网络隔离,所述生产域还包括至少一个应用主机;
所述编译主机用于将每个所述待同步代码文件在每个所述应用主机上的同步路径梳理成文件列表,并将每个所述待同步代码文件和所述文件列表同步至所述接口主机;
所述接口主机用于根据所述文件列表,将所有的待同步代码文件分别同步至每个所述应用主机上。
7.根据权利要求6所述的一种跨主机跨网络同步代码的系统,其特征在于,所述生产域还包括分发主机;
所述接口主机用于将每个所述待同步代码文件和所述文件列表同步至所述分发主机;
所述分发主机用于根据所述文件列表将所有的待同步代码文件分别同步至每个所述应用主机上。
8.根据权利要求7所述的一种跨主机跨网络同步代码的系统,其特征在于,所述分发主机具体用于通过同时启动预设数量的进程来将所有的待同步代码文件分别同步至每个所述应用主机上。
9.根据权利要求8所述的一种跨主机跨网络同步代码的系统,其特征在于,
所述分发主机还用于根据预设配置将所有的待同步代码文件进行分组打包后形成多个打包文件,并将每个所述打包文件在每个所述应用主机上的同步路径梳理成打包文件列表;
所述分发主机具体用于同时启动所述预设数量的进程,并根据所述打包文件列表将所有的打包文件分别同步至每个所述应用主机上,以便每个所述应用主机对所有的打包文件进行解包后得到所有的待同步代码文件。
10.根据权利要求7至9任一项所述的一种跨主机跨网络同步代码的系统,其特征在于,还包括:对比判断模块,所述对比判断模块用于获取每个所述应用主机上所同步的每个待同步代码文件的文件大小和/或文件时间戳,并与所述分发主机上每个待同步代码文件的文件大小和/或文件时间戳进行一一对比,若相同,则同步正常;若不相同,则存在同步异常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010120579.0A CN111338643A (zh) | 2020-02-26 | 2020-02-26 | 一种跨主机跨网络同步代码的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010120579.0A CN111338643A (zh) | 2020-02-26 | 2020-02-26 | 一种跨主机跨网络同步代码的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111338643A true CN111338643A (zh) | 2020-06-26 |
Family
ID=71183820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010120579.0A Pending CN111338643A (zh) | 2020-02-26 | 2020-02-26 | 一种跨主机跨网络同步代码的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111338643A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324159B1 (en) * | 1998-05-06 | 2001-11-27 | Sirius Communications N.V. | Method and apparatus for code division multiple access communication with increased capacity through self-noise reduction |
CN102368216A (zh) * | 2011-10-20 | 2012-03-07 | 北京金和软件股份有限公司 | 一种基于项目自动构造的流程实现方法 |
CN104536744A (zh) * | 2014-12-19 | 2015-04-22 | 微梦创科网络科技(中国)有限公司 | 一种自动化构建与部署代码的方法及服务器 |
CN105224326A (zh) * | 2015-09-30 | 2016-01-06 | 北京恒华伟业科技股份有限公司 | 一种系统代码的增量部署方法及装置 |
CN106162344A (zh) * | 2015-03-25 | 2016-11-23 | 中兴通讯股份有限公司 | 界面处理方法、装置及系统 |
CN107168763A (zh) * | 2017-05-27 | 2017-09-15 | 北京思特奇信息技术股份有限公司 | 一种基于云环境的应用同步方法、发布主机和生产主机 |
CN109412877A (zh) * | 2017-12-29 | 2019-03-01 | 中国联合网络通信有限公司广东省分公司 | 一种基于utn网络的网络能力开放系统 |
CN109639681A (zh) * | 2018-12-14 | 2019-04-16 | 三门核电有限公司 | 一种在线堆芯功率分布监测系统 |
CN110572436A (zh) * | 2019-08-12 | 2019-12-13 | 浙江讯盟科技有限公司 | 多地跨集群的服务器部署方法及系统 |
-
2020
- 2020-02-26 CN CN202010120579.0A patent/CN111338643A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324159B1 (en) * | 1998-05-06 | 2001-11-27 | Sirius Communications N.V. | Method and apparatus for code division multiple access communication with increased capacity through self-noise reduction |
CN102368216A (zh) * | 2011-10-20 | 2012-03-07 | 北京金和软件股份有限公司 | 一种基于项目自动构造的流程实现方法 |
CN104536744A (zh) * | 2014-12-19 | 2015-04-22 | 微梦创科网络科技(中国)有限公司 | 一种自动化构建与部署代码的方法及服务器 |
CN106162344A (zh) * | 2015-03-25 | 2016-11-23 | 中兴通讯股份有限公司 | 界面处理方法、装置及系统 |
CN105224326A (zh) * | 2015-09-30 | 2016-01-06 | 北京恒华伟业科技股份有限公司 | 一种系统代码的增量部署方法及装置 |
CN107168763A (zh) * | 2017-05-27 | 2017-09-15 | 北京思特奇信息技术股份有限公司 | 一种基于云环境的应用同步方法、发布主机和生产主机 |
CN109412877A (zh) * | 2017-12-29 | 2019-03-01 | 中国联合网络通信有限公司广东省分公司 | 一种基于utn网络的网络能力开放系统 |
CN109639681A (zh) * | 2018-12-14 | 2019-04-16 | 三门核电有限公司 | 一种在线堆芯功率分布监测系统 |
CN110572436A (zh) * | 2019-08-12 | 2019-12-13 | 浙江讯盟科技有限公司 | 多地跨集群的服务器部署方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI751402B (zh) | 一種資料同步方法、分散式系統、電腦可讀取儲取媒體、電腦設備及分散式設備 | |
CN107306277B (zh) | 一种服务器同步扩容的方法及装置 | |
CN108845884B (zh) | 物理资源分配方法、装置、计算机设备和存储介质 | |
CN109992571B (zh) | 一种智能变电站配置文件在线闭环校验系统及校验方法 | |
CN111651523B (zh) | 一种Kubernetes容器平台的MySQL数据同步方法及系统 | |
CN110389766B (zh) | HBase容器集群部署方法、系统、设备及计算机可读存储介质 | |
CN109992624A (zh) | 一种区块链Block chain的同步存储方法、装置及计算机设备 | |
EP2187695A1 (en) | Method, device and system for realizing task in cluster environment | |
CN105760519A (zh) | 一种集群文件系统及其文件锁分配方法 | |
CN103984309A (zh) | 一种具有容灾功能的卷烟生产系统及其容灾演练方法 | |
CN103324582A (zh) | 一种内存迁移方法、装置及设备 | |
CN111984274A (zh) | 一种一键自动化部署etcd集群的方法及装置 | |
CN109344004A (zh) | 一种内存数据库备份管理方法、装置、终端及存储介质 | |
CN102929983B (zh) | 嵌入式数据库同步到flash数据库的方法和装置 | |
CN111338643A (zh) | 一种跨主机跨网络同步代码的方法和系统 | |
WO2016197953A1 (zh) | 一种部署多模基站的方法及装置 | |
CN112346750B (zh) | 组态软件控制方法、系统和存储介质 | |
CN106412088A (zh) | 一种数据同步方法及终端 | |
CN110716828B (zh) | 一种数据库实时备份方法 | |
CN113031979A (zh) | 一种基于galaxy框架配置分离装置及实现方法 | |
CN115993977A (zh) | 一种应用部署的方法及装置 | |
CN116028463A (zh) | 搭建存储与计算分离的大数据平台的方法 | |
CN113238778B (zh) | 一种升级bios固件的方法、系统、设备及介质 | |
CN111026764B (zh) | 一种数据存储方法、装置、电子产品及存储介质 | |
CN109614266B (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 |
Application publication date: 20200626 |
|
RJ01 | Rejection of invention patent application after publication |