CN110912979A - 一种解决多服务器资源同步冲突方法 - Google Patents
一种解决多服务器资源同步冲突方法 Download PDFInfo
- Publication number
- CN110912979A CN110912979A CN201911123258.XA CN201911123258A CN110912979A CN 110912979 A CN110912979 A CN 110912979A CN 201911123258 A CN201911123258 A CN 201911123258A CN 110912979 A CN110912979 A CN 110912979A
- Authority
- CN
- China
- Prior art keywords
- update
- file
- server
- time
- updated
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明涉及一种解决多服务器资源同步冲突方法,为服务器集群中每一服务器建立更新资源的文件列表并对应更新时间T,每一服务器在最近一次更新后备份;任一服务器文件更新时,将当前服务器的地址和更新时间T’发送至其他服务器,比较T’和所有更新时间T,以T’和T为标识进行服务器集群中所有服务器的同步;同步完成后备份更新,等待下一次更新或同步。本发明是多服务器形成的多服务端进行的互相资源同步,根据服务器资源更新时间和资源更新内容差异进行对比更新,充分利用以更新时间为标识后的一致性特点,可以编辑任意服务器,最终其他服务器都会正常更新到最新的版本,解决多服务器更新时产生的冲突的问题,效率高,保证数据的完整性。
Description
技术领域
本发明涉及数据交换网络的技术领域,特别涉及一种解决多服务器资源同步冲突方法。
背景技术
在很多项目中,服务器集群的使用越来越广泛。服务器集群即是由很多服务器集中在一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个服务器进行并行计算从而获取很高的计算速度,也可以用很多服务器进行数据备份,从而使得任意一个机器损坏都不会影响到整个系统的正常运行。
在服务器集群中,服务器被大规模使用,显而易见,服务器之间的资源同步就非常重要;要保证所有服务器的资源都一样,需要保证资源同步的完整性、同步性,减少冲突的产生,而往往在不同服务器同时更新资源的时候,会产生资源之间的不对称,进而发生资源同步异常,若该问题不解决则会造成服务相关业务无法正常运行,备份资源丢失、无法找回等情况。
现有技术中,服务器的同步机制都倾向于单向更新,即一服务端-多客户端的方式,如以服务器查询版本号的方式进行与客户端的单向更新、或是采用单服务器更新其他服务器的方式,而当面对多服务端-多客户端的方式的更新时,则一般会产生冲突等情况,造成数据的丢失,即无法满足多服务端-多客户端的更新方式。
发明内容
本发明解决了现有技术中,服务器的同步机制都倾向于单向更新,当面对多服务端-多客户端的方式的更新时,则一般会产生冲突等情况,造成数据的丢失的问题,提供了一种优化的解决多服务器资源同步冲突方法。
本发明所采用的技术方案是,一种解决多服务器资源同步冲突方法,所述多服务器为一个服务器集群中的至少2个服务器,所述方法包括以下步骤:
步骤1:为每一服务器建立更新资源的文件列表,列表中任一更新文件对应记录有更新时间T;
步骤2:每一服务器在最近一次更新后进行备份;
步骤3:任一服务器存在文件更新,更新文件,将当前服务器的地址和更新时间T’发送至服务器集群的其他服务器;
步骤4:比较T’和所有更新时间T,以T’和T作为标识进行服务器集群中所有服务器对于更新文件的同步;
步骤5:同步完成,返回步骤2。
优选地,所述步骤2中,备份包括更新文件的源服务器地址、更新文件。
优选地,所述步骤4中,针对服务器集群中的其他任一服务器,
若T’晚于T,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址;
若T’早于任一更新时间T,则对当前待更新文件和更新时间为T的文件进行冲突对比,如无冲突则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,否则,回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新;
若T’与任一更新时间T相同,则查看更新文件,若文件不同,则回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新,若文件相同但内容存在区别,则将T’与任一更新时间T的更新文件和更新时间及发起更新的源服务器地址记录到错误日志,丢弃当前更新文件。
优选地,所述步骤4中,若任一服务器同时收到多个更新时间相同的更新请求,则查看更新文件,若文件不同,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,若文件相同但内容存在差异,则更新任一次更新请求的文件,并将两次更新文件和更新时间以及发起更新的源服务器地址记录到错误日志,丢弃另外一次的更新内容。
本发明提供了一种优化的解决多服务器资源同步冲突方法,通过为一个服务器集群中的每一个服务器建立更新资源的文件列表并对应列有更新时间T,每一服务器在最近一次更新后进行备份;当任一服务器存在文件更新的情况时,更新文件,并将当前服务器的地址和更新时间T’发送至服务器集群的其他服务器,通过比较T’和所有更新时间T,以T’和T作为标识进行服务器集群中所有服务器对于更新文件的同步;同步完成后备份更新,等待下一次更新或同步。
本发明是多服务器形成的多服务端进行的互相资源同步,根据服务器资源更新时间和资源更新内容差异进行对比更新,充分利用以更新时间为标识后的一致性特点,可以编辑任意服务器,最终其他服务器都会正常更新到最新的版本,解决多服务器更新时产生的冲突的问题,效率高,保证数据的完整性。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合实施例对本发明做进一步的详细描述,但本发明的保护范围并不限于此。
本发明涉及一种解决多服务器资源同步冲突方法,所述多服务器为一个服务器集群中的至少2个服务器,解决多服务器更新时产生的冲突的问题,效率高,保证数据的完整性。
所述方法包括以下步骤。
步骤1:为每一服务器建立更新资源的文件列表,列表中任一更新文件对应记录有更新时间T。
步骤2:每一服务器在最近一次更新后进行备份。
所述步骤2中,备份包括更新文件的源服务器地址、更新文件。
步骤3:任一服务器存在文件更新,更新文件,将当前服务器的地址和更新时间T’发送至服务器集群的其他服务器。
步骤4:比较T’和所有更新时间T,以T’和T作为标识进行服务器集群中所有服务器对于更新文件的同步。
所述步骤4中,针对服务器集群中的其他任一服务器,
若T’晚于T,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址;
若T’早于任一更新时间T,则对当前待更新文件和更新时间为T的文件进行冲突对比,如无冲突则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,否则,回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新;
若T’与任一更新时间T相同,则查看更新文件,若文件不同,则回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新,若文件相同但内容存在区别,则将T’与任一更新时间T的更新文件和更新时间及发起更新的源服务器地址记录到错误日志,丢弃当前更新文件。
所述步骤4中,若任一服务器同时收到多个更新时间相同的更新请求,则查看更新文件,若文件不同,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,若文件相同但内容存在差异,则更新任一次更新请求的文件,并将两次更新文件和更新时间以及发起更新的源服务器地址记录到错误日志,丢弃另外一次的更新内容。
步骤5:同步完成,返回步骤2。
本发明通过为一个服务器集群中的每一个服务器建立更新资源的文件列表并对应列有更新时间T,每一服务器在最近一次更新后进行备份;当任一服务器存在文件更新的情况时,更新文件,并将当前服务器的地址和更新时间T’发送至服务器集群的其他服务器,通过比较T’和所有更新时间T,以T’和T作为标识进行服务器集群中所有服务器对于更新文件的同步;同步完成后备份更新,等待下一次更新或同步。
本发明是多服务器形成的多服务端进行的互相资源同步,根据服务器资源更新时间和资源更新内容差异进行对比更新,充分利用以更新时间为标识后的一致性特点,可以编辑任意服务器,最终其他服务器都会正常更新到最新的版本,解决多服务器更新时产生的冲突的问题,效率高,保证数据的完整性。
Claims (4)
1.一种解决多服务器资源同步冲突方法,所述多服务器为一个服务器集群中的至少2个服务器,其特征在于:所述方法包括以下步骤:
步骤1:为每一服务器建立更新资源的文件列表,列表中任一更新文件对应记录有更新时间T;
步骤2:每一服务器在最近一次更新后进行备份;
步骤3:任一服务器存在文件更新,更新文件,将当前服务器的地址和更新时间T’发送至服务器集群的其他服务器;
步骤4:比较T’和所有更新时间T,以T’和T作为标识进行服务器集群中所有服务器对于更新文件的同步;
步骤5:同步完成,返回步骤2。
2.根据权利要求1所述的一种解决多服务器资源同步冲突方法,其特征在于:所述步骤2中,备份包括更新文件的源服务器地址、更新文件。
3.根据权利要求1所述的一种解决多服务器资源同步冲突方法,其特征在于:所述步骤4中,针对服务器集群中的其他任一服务器,
若T’晚于T,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址;
若T’早于任一更新时间T,则对当前待更新文件和更新时间为T的文件进行冲突对比,如无冲突则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,否则,回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新;
若T’与任一更新时间T相同,则查看更新文件,若文件不同,则回滚至更新时间为T的更新状态前,进行当前更新,再按时间顺序的文件列表进行文件一次更新,若文件相同但内容存在区别,则将T’与任一更新时间T的更新文件和更新时间及发起更新的源服务器地址记录到错误日志,丢弃当前更新文件。
4.根据权利要求1所述的一种解决多服务器资源同步冲突方法,其特征在于:所述步骤4中,若任一服务器同时收到多个更新时间相同的更新请求,则查看更新文件,若文件不同,则在当前服务器上更新文件,在文件列表中保存当前更新的文件、更新时间,记录更新的源服务器地址,若文件相同但内容存在差异,则更新任一次更新请求的文件,并将两次更新文件和更新时间以及发起更新的源服务器地址记录到错误日志,丢弃另外一次的更新内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911123258.XA CN110912979B (zh) | 2019-11-16 | 2019-11-16 | 一种解决多服务器资源同步冲突方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911123258.XA CN110912979B (zh) | 2019-11-16 | 2019-11-16 | 一种解决多服务器资源同步冲突方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110912979A true CN110912979A (zh) | 2020-03-24 |
CN110912979B CN110912979B (zh) | 2022-06-10 |
Family
ID=69817415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911123258.XA Active CN110912979B (zh) | 2019-11-16 | 2019-11-16 | 一种解决多服务器资源同步冲突方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110912979B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112487007A (zh) * | 2020-12-01 | 2021-03-12 | 银清科技有限公司 | 一种多网间流程同步管理方法、装置及系统 |
CN115794853A (zh) * | 2023-02-03 | 2023-03-14 | 天翼云科技有限公司 | 政务数据资源目录的更新方法、装置、电子设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050044080A1 (en) * | 2003-08-22 | 2005-02-24 | Fridella Stephen A. | Management of the file-modification time attribute in a multi-processor file server system |
CN103514298A (zh) * | 2013-10-16 | 2014-01-15 | 浪潮(北京)电子信息产业有限公司 | 一种实现文件锁的方法及元数据服务器 |
EP2833272A1 (en) * | 2013-07-29 | 2015-02-04 | Amadeus S.A.S. | Processing information queries in a distributed information processing environment |
CN106708911A (zh) * | 2015-11-18 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种云环境下数据文件同步的方法和装置 |
CN108494828A (zh) * | 2018-02-26 | 2018-09-04 | 网易(杭州)网络有限公司 | 一种节点数据的更新方法、介质、装置和计算设备 |
CN109462661A (zh) * | 2018-12-19 | 2019-03-12 | 深圳市随手科技有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN110018989A (zh) * | 2017-11-13 | 2019-07-16 | 华为技术有限公司 | 一种快照比对的方法和装置 |
-
2019
- 2019-11-16 CN CN201911123258.XA patent/CN110912979B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050044080A1 (en) * | 2003-08-22 | 2005-02-24 | Fridella Stephen A. | Management of the file-modification time attribute in a multi-processor file server system |
EP2833272A1 (en) * | 2013-07-29 | 2015-02-04 | Amadeus S.A.S. | Processing information queries in a distributed information processing environment |
CN103514298A (zh) * | 2013-10-16 | 2014-01-15 | 浪潮(北京)电子信息产业有限公司 | 一种实现文件锁的方法及元数据服务器 |
CN106708911A (zh) * | 2015-11-18 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种云环境下数据文件同步的方法和装置 |
CN110018989A (zh) * | 2017-11-13 | 2019-07-16 | 华为技术有限公司 | 一种快照比对的方法和装置 |
CN108494828A (zh) * | 2018-02-26 | 2018-09-04 | 网易(杭州)网络有限公司 | 一种节点数据的更新方法、介质、装置和计算设备 |
CN109462661A (zh) * | 2018-12-19 | 2019-03-12 | 深圳市随手科技有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
YONG JUN CHANG: "Cluster Transmission Time Synchronization for Cooperative Transmission Using Software-Defined Radio", 《2010 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS WORKSHOPS》 * |
董立岩: "基于分布式多服务系统的数据同步方法", 《吉林大学学报(理学版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112487007A (zh) * | 2020-12-01 | 2021-03-12 | 银清科技有限公司 | 一种多网间流程同步管理方法、装置及系统 |
CN112487007B (zh) * | 2020-12-01 | 2024-05-10 | 银清科技有限公司 | 一种多网间流程同步管理方法、装置及系统 |
CN115794853A (zh) * | 2023-02-03 | 2023-03-14 | 天翼云科技有限公司 | 政务数据资源目录的更新方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110912979B (zh) | 2022-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9477738B2 (en) | Initialization protocol for a peer-to-peer replication environment | |
US8719386B2 (en) | System and method for providing configuration synchronicity | |
US9367261B2 (en) | Computer system, data management method and data management program | |
CN108319623B (zh) | 一种数据重分布方法、装置及数据库集群 | |
WO2019001017A1 (zh) | 集群间数据迁移方法、系统、服务器及计算机存储介质 | |
CN107231400B (zh) | 一种数据的同步方法和装置 | |
CN105069152B (zh) | 数据处理方法及装置 | |
CN110912979B (zh) | 一种解决多服务器资源同步冲突方法 | |
WO2021120968A1 (zh) | 一种服务器扩容方法及扩容系统 | |
CN110545207B (zh) | 一种同步自动化的智能dns系统及配置方法 | |
CN106817387B (zh) | 一种数据同步方法、装置和系统 | |
WO2017071384A1 (zh) | 报文处理的方法及装置 | |
WO2021082925A1 (zh) | 一种交易处理的方法及装置 | |
CN108509296B (zh) | 一种处理设备故障的方法和系统 | |
CN110795495A (zh) | 数据处理方法、装置、电子设备及计算机可读介质 | |
CN112000850A (zh) | 进行数据处理的方法、装置、系统及设备 | |
CN113553373B (zh) | 数据同步方法及装置、存储介质及电子设备 | |
CN115827657A (zh) | 数据库的数据同步方法、存储介质以及设备 | |
CN109992447B (zh) | 数据复制方法、装置及存储介质 | |
CN115604271A (zh) | 一种基于微服务的软硬件互补的负载均衡方法 | |
US11301488B2 (en) | Method, electronic device and computer program product for data processing | |
CN105765908A (zh) | 一种多站点自动更新方法、客户端和系统 | |
CN109582288B (zh) | 一种生产配置回流的方法、系统和存储介质 | |
CN111797062B (zh) | 数据处理方法、装置和分布式数据库系统 | |
CN108494859B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |