一种数据同步方法及服务器的制造方法

文档序号:7818151阅读:164来源:国知局
一种数据同步方法及服务器的制造方法
【专利摘要】本发明公开了一种数据同步方法,包括:接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据。相应的,本发明实施例还包括一种服务器。采用本发明实施例,在用户登录不同终端时,服务器向终端仅反馈同步数据,从而减少终端与服务器之间的数据传输量,减少服务器压力。
【专利说明】一种数据同步方法及服务器

【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种数据同步方法及服务器。

【背景技术】
[0002]随着终端的发展,市场上具有多个类型的终端平台,如手机、平板电脑和计算机等。为使同一账户在不同终端登录后均可查看和修改所有数据,则需对不同终端的数据进行同步。在现有技术中,数据同步的方法是将每个终端的数据均保存在服务器中,在用户每次登录一个终端时,该终端均需向服务器请求所有数据,使得终端与服务器之间的数据传输量巨大,增加服务压力。


【发明内容】

[0003]本发明实施例提出一种数据同步方法及服务器,在用户登录不同终端时,服务器向终端仅反馈同步数据,从而减少终端与服务器之间的数据传输量,减少服务器压力。
[0004]本发明实施例提供一种数据同步方法,包括:
[0005]接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;
[0006]判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;
[0007]若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据。
[0008]进一步地,所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据,具体包括:
[0009]若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据标识;
[0010]接收所述终端根据所述同步数据标识发送的同步指令;
[0011]根据所述同步指令,向所述终端反馈同步数据。
[0012]进一步地,所述同步指令包括待同步函数名和同步数据标识;
[0013]所述根据所述同步指令,向所述终端反馈同步数据,具体包括:
[0014]将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端;
[0015]将所述同步指令的同步数据标识修改为不同步数据标识。
[0016]进一步地,在所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据之后,还包括:
[0017]将数据库中的所述键值对修改为所述登录键值对。
[0018]进一步地,所述数据同步方法还包括:
[0019]接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据;
[0020]保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
[0021]相应的,本发明实施例还提供一种服务器,包括:
[0022]接收模块,用于接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;
[0023]判断模块,用于判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;以及,
[0024]反馈模块,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据。
[0025]进一步地,所述反馈模块包括:
[0026]标识反馈单元,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据标识;
[0027]指令接收单元,用于接收所述终端根据所述同步数据标识发送的同步指令;以及,
[0028]数据反馈单元,用于根据所述同步指令,向所述终端反馈同步数据。
[0029]进一步地,所述同步指令包括待同步函数名和同步数据标识;
[0030]所述数据反馈单元包括:
[0031]反馈单元,用于将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端;以及,
[0032]修改单元,用于将所述同步指令的同步数据标识修改为不同步数据标识。
[0033]进一步地,所述服务器还包括:
[0034]修改模块,用于将数据库中的所述存储键值对修改为所述登录键值对。
[0035]进一步地,所述服务器还包括:
[0036]数据接收模块,用于接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据;以及,
[0037]数据保存模块,用于保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
[0038]实施本发明实施例,具有如下有益效果:
[0039]本发明实施例提供的数据同步方法及服务器,通过含有登录账户和终端设备唯一标识码的登录键值对来判断用户的登录终端,使用户仅在登录不同终端时向服务器请求待同步的数据,从而保证在不同终端的数据一致的前提下,减少终端与服务器之间的数据传输量,减少服务器压力。
[0040]而且,在请求待同步的数据时,仅请求待同步数据中的某一部分用户需要的数据,即待同步函数名所对应的数据,而并非所有待同步数据,进一步减少了终端与服务器之间的数据传输量,且避免终端数据流量消耗过大,用户在终端等待数据加载时间过长的问题。

【专利附图】

【附图说明】
[0041]图1是本发明提供的数据同步方法的一个实施例的流程示意图;
[0042]图2是图1中步骤S3的一个实施例的流程示意图;
[0043]图3是本发明提供的数据同步方法的另一个实施例的流程示意图;
[0044]图4是本发明提供的服务器的一个实施例的结构示意图;
[0045]图5是本发明提供的服务器中的反馈模块的一个实施例的结构示意图。

【具体实施方式】
[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]参见图1,是本发明提供的数据同步方法的一个实施例的流程示意图,包括步骤SI至S3,具体如下:
[0048]S1、接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;
[0049]S2、判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;
[0050]S3、若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据。
[0051]当用户在终端登录应用程序的时候,终端为用户和该终端创建一个登录键值对。由于登录账户和每一个终端的设备唯一标识码都是唯一的,因此,登录键值对包括登录账户和终端设备唯一标识码,其中,终端设备唯一标识码可以为终端设备序列号,用于区分不同用户在不同设备的登录情况。而且,服务器仅将用户最后一次登录时的登录键值对保存在数据库中,因而,在用户下一次登录时,可将用户本次登录的登录键值对与数据库中保存的相同用户的存储键值对相对比,从而判断该用户本次登录是否使用了不同的终端,若使用不同终端登录,则需要同步数据到本次登录的终端上,若使用相同终端登录,则不需要同步数据。
[0052]而如果用户首次登录该应用程序,服务器的数据库中不存在该用户的登录键值对,即服务器不存在该用户在该应用程序中的数据,因此,用户登录的终端无需同步数据,但服务器会将用户本次登录所创建的登录键值对保存在数据库中,以供用户下一次登录该应用程序时,服务器对其进行对比和判断。
[0053]需要说明的是,对用户的登录键值对进行判断仅发生在用户进入应用程序时,而不是终端与服务器的每一次交互时,从而避免服务器进行过多的判断,增加服务器的压力。
[0054]进一步地,如图2所示,在步骤S3中,所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据,具体包括:
[0055]S31、若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据标识;
[0056]S32、接收所述终端根据所述同步数据标识发送的同步指令;
[0057]S33、根据所述同步指令,向所述终端反馈同步数据。
[0058]需要说明的是,若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则说明同一用户在不同终端登录,需要同步数据,服务器向终端反馈同步数据标识。若数据库中不存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则说明用户首次登录或同一用户在相同终端登录,不需要同步数据,服务器向终端反馈不同步数据标识。
[0059]进一步地,所述同步指令包括待同步函数名和同步数据标识;
[0060]所述根据所述同步指令,向所述终端反馈同步数据,具体包括:
[0061]将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端;
[0062]将所述同步指令的同步数据标识修改为不同步数据标识。
[0063]需要说明的是,在应用程序中,根据不同运行函数将数据分为不同种类,在相同函数中运行的数据为一类数据,如用户列表、某个用户的资料等等。用户在查询某一业务时,只需更新该业务的运行函数中的数据。因此,用户在查询某一业务时,向服务器发送的同步指令包括待同步函数名和同步数据标识,只需请求该函数名相对应的同步数据即可,并将该函数名所对应的同步数据标识修改为不同步数据标识,避免重复向服务器发送同步请求。对于未被请求的同步数据,则暂时不反馈给终端,从而避免一次性同步过多数据造成用户在终端长时间等待。
[0064]数据在终端进行同步后,均保存在本地数据库中。若用户进行相同查询或查询本地数据,则从本地数据库中直接查询,无需再从服务器中查询,从而减少了对服务器的请求次数,减小服务器的压力,同时,提升了终端数据的加载速度,减少终端的流量消耗。
[0065]进一步地,在所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据之后,还包括:
[0066]将数据库中的所述存储键值对修改为所述登录键值对。
[0067]需要说明的是,若用户在不同终端登录,则将服务器数据库中的存储键值对替换为本次登录的登录键值对,使数据库记录用户最新使用的登录终端,供服务器在用户下次登录时对是否需要向终端反馈同步数据做出准确判断。
[0068]进一步地,所述数据同步方法还包括:
[0069]接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据;
[0070]保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
[0071]需要说明的是,用户在终端对本地数据进行添加、修改或删除等处理后,终端并未保存处理数据,而是将处理数据先发送给服务器,使服务器先保存该处理数据。若服务器保存成功,则向终端反馈保存成功标识,终端根据保存成功标识保存处理数据到本地数据库;若服务器保存失败,则向终端反馈保存失败标识,终端根据保存失败标识不保存处理数据,从而保证终端与服务器数据的一致性。
[0072]在具体实施过程中,本发明实施例提供的数据同步方法适用于禁止同一账户在多终端同时登录的情况。例如,账户已在第一终端登录,服务器保存账户与第一终端的第一登录键值对。而在此登录期间,该账户又在第二终端登录,则第二终端向服务器发送登录请求,将服务器中的第一登录键值对替换为账户与第二终端的第二登录键值对,并将第一终端中的数据同步给第二终端,保证各个终端数据的一致性。同时,服务器向第一终端推送退出消息,提醒用户该账户已在另一个终端上登录,第一终端接收到该退出消息后即退出登录。
[0073]本发明实施例提供的数据同步方法还适用于同一账户在多终端同时登录的情况。例如,账户已在第一终端登录,服务器保存账户与第一终端的第一登录键值对。而在此登录期间,该账户又在第二终端登录,则第二终端向服务器发送登录请求,将服务器中的第一登录键值对替换为账户与第二终端的第二登录键值对,并将此前第一终端的数据同步到第二终端。在同时登录两终端过程中,若用户在第一终端和/或第二终端对本地数据进行增加、删除或修改等处理,则通过服务器,将处理后的数据同时同步到两个终端,从而保证数据在不同终端的一致性。
[0074]参见图3,是本发明提供的数据同步方法的一个实施例的流程示意图,包括步骤S301至步骤S308,具体如下:
[0075]S301、终端建立登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;
[0076]S302、终端向服务器发送登录请求;所述登录请求包括登录键值对;
[0077]S303、服务器判断数据库中是否存在与所述登录键值对的登录账户相同的键值对;若存在,则执行步骤S304,若不存在,则执行步骤S305 ;
[0078]S304、服务器判断数据库中的所述键值对的终端设备唯一标识码是否与所述登录键值对的终端设备唯一标识码相同;若是,则执行步骤S305,若否,则执行步骤S306 ;
[0079]S305、服务器向终端反馈不同步数据标识;
[0080]S306、服务器向终端反馈同步数据标识,并将数据库中的所述键值对修改为所述登录键值对;
[0081]S307、终端向服务器发送同步指令;所述同步指令包括同步键值对;所述同步键值对包括待同步函数名和同步数据标识;
[0082]S308、服务器向终端反馈所述同步键值对的待同步函数名所对应的同步数据,并将所述同步键值对的同步数据标识修改为不同步数据标识。
[0083]在用户登录不同终端时,服务器向终端反馈同步数据,从而保证数据在不同终端的一致性,减少终端与服务器之间的数据传输量。而且,终端每次请求的同步数据仅为部分同步数据,从而避免用户因数据加载等待时间过长。
[0084]相应的,本发明实施例还提供一种服务器。
[0085]参见图4,是本发明提供的服务器的一个实施例的结构示意图,包括:
[0086]接收模块1,用于接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码;
[0087]判断模块2,用于判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;以及,
[0088]反馈模块3,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据。
[0089]进一步地,如图5所示,所述反馈模块5包括:
[0090]标识反馈单元31,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据标识;
[0091]指令接收单元32,用于接收所述终端根据所述同步数据标识发送的同步指令;以及,
[0092]数据反馈单元33,用于根据所述同步指令,向所述终端反馈同步数据。
[0093]进一步地,所述同步指令包括待同步函数名和同步数据标识;
[0094]所述数据反馈单元包括:
[0095]反馈单元,用于将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端;以及,
[0096]修改单元,用于将所述同步指令的同步数据标识修改为不同步数据标识。
[0097]进一步地,所述服务器还包括:
[0098]修改模块,用于将数据库中的所述存储键值对修改为所述登录键值对。
[0099]进一步地,所述服务器还包括:
[0100]数据接收模块,用于接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据;以及,
[0101]数据保存模块,用于保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
[0102]本发明实施例提供的数据同步方法及服务器,通过含有登录账户和终端设备唯一标识码的登录键值对来判断用户的登录终端,使用户仅在登录不同终端时向服务器请求待同步的数据,从而保证在不同终端的数据一致的前提下,减少终端与服务器之间的数据传输量,减少服务器压力。
[0103]而且,在请求待同步的数据时,仅请求待同步数据中的某一部分用户需要的数据,即待同步函数名所对应的数据,而并非所有待同步数据,进一步减少了终端与服务器之间的数据传输量,且避免终端数据流量消耗过大,用户在终端等待数据加载时间过长的问题。
[0104]以上所述是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
【权利要求】
1.一种数据同步方法,其特征在于,包括: 接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码; 判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对; 若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据。
2.如权利要求1所述的数据同步方法,其特征在于,所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据,具体包括: 若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据标识; 接收所述终端根据所述同步数据标识发送的同步指令; 根据所述同步指令,向所述终端反馈同步数据。
3.如权利要求2所述的数据同步方法,其特征在于,所述同步指令包括待同步函数名和同步数据标识; 所述根据所述同步指令,向所述终端反馈同步数据,具体包括: 将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端; 将所述同步指令的同步数据标识修改为不同步数据标识。
4.如权利要求1所述的数据同步方法,其特征在于,在所述若数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对,则向所述终端反馈同步数据之后,还包括: 将数据库中的所述存储键值对修改为所述登录键值对。
5.如权利要求1至4任一项所述的数据同步方法,其特征在于,所述数据同步方法还包括: 接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据; 保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
6.一种服务器,其特征在于,包括: 接收模块,用于接收终端发送的登录请求;所述登录请求包括登录键值对;所述登录键值对包括登录账户和终端设备唯一标识码; 判断模块,用于判断数据库中是否存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对;以及, 反馈模块,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据。
7.如权利要求6所述的服务器,其特征在于,所述反馈模块包括: 标识反馈单元,用于在所述判断模块判定数据库中存在与所述登录键值对的登录账户相同且终端设备唯一标识码不同的存储键值对之后,向所述终端反馈同步数据标识;指令接收单元,用于接收所述终端根据所述同步数据标识发送的同步指令;以及, 数据反馈单元,用于根据所述同步指令,向所述终端反馈同步数据。
8.如权利要求7所述的服务器,其特征在于,所述同步指令包括待同步函数名和同步数据标识; 所述数据反馈单元包括: 反馈单元,用于将所述同步指令的待同步函数名所对应的同步数据反馈给所述终端;以及, 修改单元,用于将所述同步指令的同步数据标识修改为不同步数据标识。
9.如权利要求6所述的服务器,其特征在于,所述服务器还包括: 修改模块,用于将数据库中的所述键值对修改为所述登录键值对。
10.如权利要求6至9任一项所述的服务器,其特征在于,所述服务器还包括: 数据接收模块,用于接收所述终端发送的处理数据;所述处理数据为所述终端对本地数据进行添加、修改或删除后的数据;以及, 数据保存模块,用于保存所述处理数据,并向所述终端反馈保存成功标识,使所述终端保存所述处理数据。
【文档编号】H04L29/08GK104301428SQ201410592555
【公开日】2015年1月21日 申请日期:2014年10月29日 优先权日:2014年10月29日
【发明者】郑裕集, 李思 申请人:广州视源电子科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1