CN104935663B - 一种多客户端协同分组数据同步处理方法 - Google Patents
一种多客户端协同分组数据同步处理方法 Download PDFInfo
- Publication number
- CN104935663B CN104935663B CN201510343342.8A CN201510343342A CN104935663B CN 104935663 B CN104935663 B CN 104935663B CN 201510343342 A CN201510343342 A CN 201510343342A CN 104935663 B CN104935663 B CN 104935663B
- Authority
- CN
- China
- Prior art keywords
- client
- server
- packet
- version number
- grouped
- 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.)
- Expired - Fee Related
Links
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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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
Abstract
本发明提供了一种多客户端协同分组数据同步处理方法,包括:客户端进入分组操作时,首先从服务端获取服务端上当前版本号的分组信息数据,并保存至客户端的版本号中;客户端对分组对象进行分组后将分组结果发送至服务端;服务端依据版本号对最先收到的客户端分组结果进行判断,如版本号不同,则更新服务端的分组信息数据并推送至其他客户端进行同步;如版本号相同,则服务端再对其他客户端的分组结果进行处理。本发明方法中各个进行分组操作的客户端需与服务端版本号保持同步,以实现多客户端协同分组的有序有效进行,防止分组结果无法及时保存以及各客户端无法获知最新分组信息数据。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种多客户端协同分组数据同步处理方法。
背景技术
在活动管理中,我们经常需要对参与人员进行分组,并将分组的结果及时的反馈到活动参与者,这些任务对于组织者来说显得尤为重要。传统的方法主要是通过人工核对的方式进行。
传统的人工分组方法对于活动组织者来说,过程不直观,手动核对人员容易出错,过程比较繁琐,而分组的过程中又需要和参与者进行持续的沟通反馈分组信息,对分组的及时性和正确性有很高的要求。因此,传统的人工分组存在很大的改进空间。
发明内容
本发明的目的在于提供一种多客户端协同分组数据同步处理方法,以解决现有的人工分组方法存在的分组及时性及正确性较差的问题。
本发明的另一目的在于提供一种多客户端协同分组数据同步处理方法,以解决多人协同分组时数据各客户端无法及时同步的问题。
为实现上述目的,本发明提供了一种多客户端协同分组数据同步处理方法,包括以下步骤:
S1:任一客户端每次进入分组操作时,首先从服务端获取服务端上当前版本号Vs的分组信息数据,并保存至客户端的版本号Vc;
S2:一个或多个客户端对若干待分组对象进行分组,分组完成后将分组结果发送至服务端;
S3:服务端对分组结果按时间排序,对最先收到的客户端分组结果进行判断,如分组结果与服务端当前版本号Vs的分组信息数据不同,则按该分组结果更新服务端的分组信息数据并保存为版本号Vsn,随后将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步;
S4:如分组结果与服务端当前版本号Vs的分组信息数据相同,则服务端再依时间的先后顺序对收到的其他客户端分组结果数据按步骤S3进行处理,直至多个客户端的分组结果均处理完毕。
较佳地,所述分组信息数据包括所述待分组对象的若干种组合方式,所述组合方式为按待分组对象的信息进行组合。
较佳地,所述待分组对象的信息包括头像、用户名或其他待分组对象的基本信息。
较佳地,所述步骤S2中任一客户端对若干待分组对象进行分组的过程具体为:
S21:在分组管理页面列出一个或多个指定分组,在指定分组中设置若干数量的空槽;
S22:选取若干待分组对象中的任意一个,将其移动至指定分组的目标空槽处,完成对该分组对象的分组;
S23:重复步骤S22,直至全部待分组对象全部被移动至指定分组的空槽内;
S24:将指定分组的空槽数量及待分组对象在所述指定分组中所处空槽的位置信息存储为当前的分组结果。
较佳地,所述步骤S22中移动待分组对象的操作具体为:长按或单击或多次点击以选中一待分组对象,然后拖动选中的待分组对象至目标空槽处,松开拖动操作则完成对该分组对象的分组。
较佳地,所述步骤S1中获取的分组信息数据包括:当前服务端最新的版本号分组数据,及服务端版本号Vs。
较佳地,所述步骤S2中,将分组结果发送至服务端的同时,还将该客户端距离最近一次上传的分组表变更记录上传至服务端。
较佳地,所述步骤S3中,将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步时,其他客户端更新其版本号为与Vsn相同的版本号,更新其分组数据为版本号Vsn所对应的分组数据。
较佳地,每个版本号均与一组分组数据相对应,所述分组数据包括客户端所执行的分组结果,所述变更记录包括客户端编号及该客户端所执行的分组结果的变更关系,当分组信息数据更新时,版本号、变更记录及分组数据随之更新。
本发明提供的多客户端协同分组数据同步处理方法,通过在多人协同进行分组操作时,对来自多个客户端的分组数据通过建立版本号,并依据版本号进行数据同步处理。该方法对同时进行分组操作的多个客户端分别建立版本号,并且服务端也具有一个版本号,当某个客户端完成分组后即上传其分组信息,同时修改该客户端及服务端的版本号,则当其他客户端也需要上传分组信息时,先依据版本号判断服务端与其是否同步,如不同步则可以首先更新本地数据为服务端最新数据,即各个进行分组操作的客户端需与服务端版本号保持同步,以实现多客户端协同分组的有序有效进行,防止分组结果无法及时保存以及各客户端无法获知最新分组信息数据。
附图说明
图1为本发明方法总体过程示意图;
图2为本发明方法中对待分组对象进行分组过程示意图。
具体实施方式
为更好地说明本发明,兹以一优选实施例,并配合附图对本发明作详细说明,具体如下:
如图1所示,本发明方法,包括以下步骤:
S1:任一客户端每次进入分组操作时,首先从服务端获取服务端上当前版本号Vs的分组信息数据,并保存至客户端的版本号Vc。
其中,所获取的服务端上当前分组信息数据包括:当前服务端最新的版本号所对应的分组数据,及服务端版本号Vs。
S2:一个或多个客户端对若干待分组对象进行分组,分组完成后将分组结果发送至服务端;
其中,将分组结果发送至服务端的同时,还需将该客户端距离最近一次上传的分组表变更记录上传至服务端。
S3:服务端对分组结果按时间排序,对最先收到的客户端分组结果进行判断,如分组结果与服务端当前版本号Vs的分组信息数据不同,则按该分组结果更新服务端的分组信息数据并保存为版本号Vsn,随后将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步。
其中,将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步时,其他客户端更新其版本号为与Vsn相同的版本号,更新其分组数据为版本号Vsn所对应的分组数据。
S4:如分组结果与服务端当前版本号Vs的分组信息数据相同,则服务端再依时间的先后顺序对收到的其他客户端分组结果数据按步骤S3进行处理,直至多个客户端的分组结果均处理完毕。
其中,如图2所示,步骤S2中任一客户端对若干待分组对象进行分组的过程具体为:
S21:在分组管理页面列出一个或多个指定分组,在指定分组中设置若干数量的空槽。
当指定分组为多组时,客户端可依据预先设定的分组方式进行指定分组的初始化,如指定分组中空槽的数量、各空槽的对应位置关系(例如空槽顺次排列或者在进行赛事类活动时,指定分组的全部空槽中的某两个或多个为一小组或对手关系)等。客户端对待分组对象的分组操作即为将其划分进入某一指定分组内的某个目标空槽处的过程。
S22:选取若干待分组对象中的任意一个,将其移动至指定分组的目标空槽处,完成对该分组对象的分组。
其中,移动待分组对象时,若目标空槽处已有分组对象,将目标空槽处的分组对象替换为当前移动的分组对象,如该目标空槽处无分组对象,则将当前移动的分组对象置于目标空槽中。移动待分组对象的操作方式具体为:长按或单击或多次点击以选中一待分组对象,然后拖动选中的待分组对象至目标空槽处,松开拖动操作则完成对该分组对象的分组。
S23:重复步骤S22,直至全部待分组对象全部被移动至指定分组的空槽内;
S24:将指定分组的空槽数量及待分组对象在所述指定分组中所处空槽的位置信息存储为当前的分组结果。
优选地,本实施例中,分组信息数据包括待分组对象的若干种组合方式,组合方式为按待分组对象的某一类别信息进行组合。待分组对象的信息包括以下类别:如头像、用户名或其他待分组对象的基本信息。
其中,上述版本号中的每个版本号均与一组分组数据相对应,而分组数据包括客户端所执行的分组结果,变更记录包括客户端编号及该客户端所执行的分组结果的变更关系。当分组信息数据更新时,版本号、变更记录及分组数据随之更新。
例如,以两个客户端编辑分组为例,定义:两个客户端分别为C1、C2,服务端端为S,初始待分组对象分别为u1,u2,...至u10。
1. 初始状态:服务端S无分组记录和数据,服务端初始版本号为Vs=0,C1、C2进入分组管理界面,请求服务端S数据,待分组列表里列出u1至u10,C1客户端分组版本号Vc1=Vs=0,C2客户端分组版本号Vc2=Vs=0。
2. C1客户端添加分组1(g1),C1客户端的变更记录为:C1 ADD group g1, 分组数据为group[0]=g1,C1客户端版本号+1后Vc1=1。完成该操作后C1将C1版本号、变更记录、分组数据自动上传至服务端。
3. C2在C1操作过程中,C2也添加分组1,于是C2的变更记录为:C2 ADD group g1,分组数据为group[0]=g1,Vc2=1,C2将其自动上传至服务端。
4. 服务端S先收到C1传来的分组结果, S进行如下操作: a)保存变更记录C1 ADDgroup g1;b)更新分组数据group[0]=g1;c)更新Vs=1;d)推送通知除C1之外的其他客户端更新数据,本实施例中推送至C2
5. C2收到S的推送更新通知后做如下操作:a) 调用服务端S数据更新接口,获取服务端版本号Vs,服务端分组数据; b) 删除C2版本号0至1之间的变更记录;c) 更新本地分组数据group[0]=g1; d)更新本地版本号 Vc2=Vs=1。完成后C1,S,C2数据同步。
6. 如果C2在收到S的推送更新之前向S提交数据,服务端处理完C1的数据后再处理C2传来的数据, S检查Vs=1=Vc2,Vs与Vc2版本号冲突,S返回冲突错误消息给C2,消息内容包括:S版本号Vs=1,S最新分组数据group[0]=g1。
C2收到S返回的冲突错误消息后,做如下操作:a) 删除C2版本号0至1之间的变更记录,b) 更新本地分组数据group[0]=g1, c)更新本地版本号 Vc2=Vs=1。完成后C1,S,C2数据同步。
7. 如果C2在收到S的推送更新之后向S提交数据,则服务端继续按步骤4中进行处理C2的分组结果。
对于C2,在服务端已有C1的分组结果并推送至C2后,C2再次编辑分组,将u1拖动至分组1的第1格,变更记录为:C2 move u1 g1 1。
8. S接收步骤7的C2传来数据,S更新后:变更记录由C1 ADD group g1变为C2move u1 g1 1; Vs版本号为2,S推送更新消息给C1
9. 同步骤5,C1进行更新本地数据使其与S同步。
10. 重复步骤2-9操作,直至C1、C2不再继续进行分组。
此时,服务端具有几种来自C1、C2的不同版本号的分组信息数据,而客户端C1、C2处显示服务端最新版本的分组信息数据。
本发明方法中的客户端可以为手机、PAD、计算机或其他可互相交互数据以及进行数据处理的设备。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何本领域的技术人员在本发明揭露的技术范围内,对本发明所做的变形或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述的权利要求的保护范围为准。
Claims (8)
1.一种多客户端协同分组数据同步处理方法,其特征在于,包括以下步骤:
S1:任一客户端每次进入分组操作时,首先从服务端获取服务端上当前版本号Vs的分组信息数据,并保存至客户端的版本号Vc;
S2:多个客户端对若干待分组对象进行分组,分组完成后将分组结果发送至服务端,其中,任一客户端对若干待分组对象进行分组的过程具体为:
S21:在分组管理页面列出一个或多个指定分组,在指定分组中设置若干数量的空槽;
S22:选取若干待分组对象中的任意一个,将其移动至指定分组的目标空槽处,完成对该分组对象的分组;
S23:重复步骤S22,直至全部待分组对象全部被移动至指定分组的空槽内;
S24:将指定分组的空槽数量及待分组对象在所述指定分组中所处空槽的位置信息存储为当前的分组结果;
S3:服务端对分组结果按时间排序,对最先收到的客户端分组结果进行判断,如分组结果与服务端当前版本号Vs的分组信息数据不同,则按该分组结果更新服务端的分组信息数据并保存为版本号Vsn,随后将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步;
S4:如分组结果与服务端当前版本号Vs的分组信息数据相同,则服务端再依时间的先后顺序对收到的其他客户端分组结果数据按步骤S3进行处理,直至多个客户端的分组结果均处理完毕。
2.根据权利要求1所述的多客户端协同分组数据同步处理方法,其特征在于,所述分组信息数据包括所述待分组对象的若干种组合方式,所述组合方式为按待分组对象的信息进行组合。
3.根据权利要求2所述的多客户端协同分组数据同步处理方法,其特征在于,所述待分组对象的信息包括头像、用户名或其他待分组对象的基本信息。
4.根据权利要求1所述的多客户端协同分组数据同步处理方法,其特征在于,所述步骤S22中移动待分组对象的操作具体为:长按或单击或多次点击以选中一待分组对象,然后拖动选中的待分组对象至目标空槽处,松开拖动操作则完成对该分组对象的分组。
5.根据权利要求1所述的多客户端协同分组数据同步处理方法,其特征在于,所述步骤S1中获取的分组信息数据包括:当前服务端最新的版本号分组数据,及服务端版本号Vs。
6.根据权利要求1所述的多客户端协同分组数据同步处理方法,其特征在于,所述步骤S2中,将分组结果发送至服务端的同时,还将该客户端距离最近一次上传的分组表变更记录上传至服务端。
7.根据权利要求1所述的多客户端协同分组数据同步处理方法,其特征在于,所述步骤S3中,将版本号Vsn所对应的分组信息数据推送至其他客户端进行同步时,其他客户端更新其版本号为与Vsn相同的版本号,更新其分组数据为版本号Vsn所对应的分组数据。
8.根据权利要求6所述的多客户端协同分组数据同步处理方法,其特征在于,每个版本号均与一组分组数据相对应,所述分组数据包括客户端所执行的分组结果,所述变更记录包括客户端编号及该客户端所执行的分组结果的变更关系,当分组信息数据更新时,版本号、变更记录及分组数据随之更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510343342.8A CN104935663B (zh) | 2015-06-19 | 2015-06-19 | 一种多客户端协同分组数据同步处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510343342.8A CN104935663B (zh) | 2015-06-19 | 2015-06-19 | 一种多客户端协同分组数据同步处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104935663A CN104935663A (zh) | 2015-09-23 |
CN104935663B true CN104935663B (zh) | 2019-02-26 |
Family
ID=54122631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510343342.8A Expired - Fee Related CN104935663B (zh) | 2015-06-19 | 2015-06-19 | 一种多客户端协同分组数据同步处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104935663B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779936B (zh) * | 2016-12-08 | 2020-09-22 | 上海携程国际旅行社有限公司 | 订单验证系统及订单验证方法 |
CN110572360B (zh) * | 2019-08-02 | 2022-05-13 | 武大吉奥信息技术有限公司 | 一种gis空间数据协同编辑的方法 |
CN111507691A (zh) * | 2020-04-24 | 2020-08-07 | 立得空间信息技术股份有限公司 | 用于高精度地图生产的协同作业系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630277A (zh) * | 2003-12-18 | 2005-06-22 | 腾讯科技(深圳)有限公司 | 即时通讯系统及实现公用好友分组的方法 |
CN1991727A (zh) * | 2005-12-28 | 2007-07-04 | 腾讯科技(深圳)有限公司 | 一种即时通讯用户主面板好友分组的排列定制方法 |
CN101217504A (zh) * | 2007-12-27 | 2008-07-09 | 腾讯科技(深圳)有限公司 | 一种共享通信好友的方法及网络通信系统 |
CN102014168A (zh) * | 2010-12-17 | 2011-04-13 | 清华大学 | 一种基于云服务的互联互通通讯录的方法和装置 |
CN102194036A (zh) * | 2010-03-03 | 2011-09-21 | 腾讯科技(深圳)有限公司 | 一种同步游戏好友信息的方法、装置和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090187979A1 (en) * | 2008-01-19 | 2009-07-23 | Sever Gil | Method and apparatus for global unique identifier, including id database |
-
2015
- 2015-06-19 CN CN201510343342.8A patent/CN104935663B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630277A (zh) * | 2003-12-18 | 2005-06-22 | 腾讯科技(深圳)有限公司 | 即时通讯系统及实现公用好友分组的方法 |
CN1991727A (zh) * | 2005-12-28 | 2007-07-04 | 腾讯科技(深圳)有限公司 | 一种即时通讯用户主面板好友分组的排列定制方法 |
CN101217504A (zh) * | 2007-12-27 | 2008-07-09 | 腾讯科技(深圳)有限公司 | 一种共享通信好友的方法及网络通信系统 |
CN102194036A (zh) * | 2010-03-03 | 2011-09-21 | 腾讯科技(深圳)有限公司 | 一种同步游戏好友信息的方法、装置和系统 |
CN102014168A (zh) * | 2010-12-17 | 2011-04-13 | 清华大学 | 一种基于云服务的互联互通通讯录的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104935663A (zh) | 2015-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106372221B (zh) | 一种文件同步的方法、设备及系统 | |
CN105005499B (zh) | 多客户端协同分组及显示方法 | |
CN104980513B (zh) | 一种多客户端协同分组并发冲突及权限处理方法 | |
CN104935663B (zh) | 一种多客户端协同分组数据同步处理方法 | |
CN105518641B (zh) | 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统 | |
CN105930121B (zh) | 多客户端的笔迹同步方法和系统 | |
CN106055723B (zh) | 一种数据库数据同步装置、系统及方法 | |
CN104346458B (zh) | 数据存储方法和存储设备 | |
CN105491087B (zh) | 一种文件下载方法、装置和电子设备 | |
CN110192428A (zh) | 服务请求处理 | |
CN110502572A (zh) | 一种数据同步的方法及服务器 | |
CN106201715A (zh) | 一种任务调度方法和装置 | |
CN102999344A (zh) | 一种智能终端及其用户自定义操作集的方法和装置 | |
CN107277112A (zh) | 一种可伸缩和高效的地址空间转换算法 | |
CN105471651B (zh) | 一种二层网络中vlan同步方法、本地交换机和远端交换机 | |
CN107968808A (zh) | 分布式系统中资源状态同步的方法和系统 | |
CN104022896B (zh) | 一种配置管理方法、装置及网络设备 | |
CN107784416A (zh) | 一种任务传递型处理方法 | |
CN109710623A (zh) | 一种智能订单同步方法 | |
CN106327160A (zh) | 日程创建方法及装置 | |
CN105339906B (zh) | 控制对永久存储设备的数据写入的方法 | |
CN108650168A (zh) | 多人会话的成员数据获取方法和装置、存储介质、处理器 | |
CN103152245B (zh) | 一种巡航路线控制方法 | |
CN102209048B (zh) | 一种用于实现用户信息共享的即时通讯系统及方法 | |
CN107249045A (zh) | 便携式内窥镜多模态信息同步存储方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190226 Termination date: 20210619 |