CN1885786A - 一种数据更新系统及方法 - Google Patents
一种数据更新系统及方法 Download PDFInfo
- Publication number
- CN1885786A CN1885786A CNA2005100355391A CN200510035539A CN1885786A CN 1885786 A CN1885786 A CN 1885786A CN A2005100355391 A CNA2005100355391 A CN A2005100355391A CN 200510035539 A CN200510035539 A CN 200510035539A CN 1885786 A CN1885786 A CN 1885786A
- Authority
- CN
- China
- Prior art keywords
- data
- packet
- client
- server end
- unit
- 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
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据更新系统,包括多个客户端,以及连接并实现客户端间信息交互的服务器端,其中所述客户端包括监测单元,存储单元以及显示单元,其特点是,客户端还包括具有特定数据包协议的组包单元,用于接收监测单元监测到的变更后的数据,并将其组包后上报给服务器端;以及解析单元,具有与组包单元相同的数据包协议,用于接收并解析服务器端下发的数据包,并将解析后的数据发送给存储单元以及显示单元。本发明可以实现实时的数据更新,同时,在整个过程中对服务器端的压力比较小。本发明还公开了一种数据更新方法。
Description
技术领域
本发明涉及网络通信领域,尤其涉及即时通信系统中应用的对用户数据更新的数据更新系统及方法。
背景技术
即时通信系统中,各个用户之间需要实时感知其他员工的状态以及一些基本资料,以便于找到正确的人并与之进行有效的沟通,这样,当某一用户的数据改变时,通常需要将改变后的数据实时地发送给其联系人,这些与用户相关的数据通常包括该用户的在线状态,用户基本资料,以及该用户所在的组织的架构等。这些数据通常由于安全的考虑,需要打包发送。现有技术中,对用户数据进行更新的数据更新系统通常包括:服务器端,客户端;上述数据的实时更新通常是采用用户手动更新的方式或者运用定时器的方式。
其中,手动更新的方式中,数据更新的发送方将更新的数据打包发送给服务器端,服务器端对这些数据解包并存储解析后的数据。在数据更新的接收方,其客户端包括一检测单元以及一协议发送单元,当接收方用户需要更新数据时,采用手动更新的方式,即由接收方的用户手动点击触发接收方客户端上的检测单元检测用户的数据更新需求,并将该数据更新的需求(包含需求数据的协议包)上报给服务器端;服务器端收到请求后,首先解析协议包中的协议命令,然后依协议命令号打包相应的数据,下发数据包给接收方客户端;接收方客户端接收到数据包后,解包该下发的数据,存储并显示该最新据。
定时器更新方式中,数据更新的发送方将更新的数据打包发送给服务器端,服务器端对这些数据解包并存储解析后的数据;在数据更新的接收方,其客户端包括一定时器以及一协议发送单元,该定时器更新方式的技术方案为:接收方客户端的定时器定时触发客户端的协议发送单元向服务器端发送更新数据的请求,该请求中包含有数据打包的协议包;服务器端接收到接收方端的请求后,首先解析协议包中的协议命令,然后依协议命令号打包相应的数据,下发给接收方客户端;接收方客户端接收到数据包后,解包该下发的数据,存储并显示最新数据。
通过上述的技术,用户的联系人可以方便得看到该用户的最新数据,使得联系人可以根据这些状态信息来安排沟通的方式和时间。
然而,也可以看到,在上述系统中,无论采用手动更新方式还是定时器更新方式,都是基于不考虑其联系人的状况是否有更新而直接向服务器端获取数据,这样,如果用户的联系人没有手动去更新最新数据,或者联系人察看数据的时刻正好在定时器的间隙时间,定时器尚未触发协议发送单元向服务器发送更新数据的请求,则用户的联系人获得的用户数据的不会是该用户的最新的数据,不能满足即时通信的实时性要求。
另外,在上述的两种情况下,数据上报的过程与数据下发的过程完全独立,服务器在每次接到发送方的数据包时需要进行一次解包,才能存储;而接收方每次更新数据都需要根据用户需求的数据发送相应的协议包到服务器端,然后服务器端通过解包,再根据协议命令号找到相应的数据,并依协议包对相应数据组包,然后才下发给客户端,这种方式造成了服务器端处理中较大的压力。
发明内容
本发明的目的在于解决现有技术中存在的与用户相关的数据不能实时更新,且数据更新的过程中对服务器端造成压力较大的问题。
为此,本发明解决技术问题的技术方案是:提供一种数据更新系统,包括多个客户端,以及连接并实现客户端间信息交互的服务器端,其中所述客户端包括监测单元,存储单元以及显示单元,其特征在于:所述客户端还包括具有特定数据包协议的组包单元,用于接收监测单元监测到的变更后的数据,并将其组包后上报给服务器端;以及解析单元,具有与组包单元相同的数据包协议,用于接收并解析服务器端下发的数据包,并将解析后的数据发送给存储单元以及显示单元。
优选的,所述服务器端包括数据管理单元以及存储单元,数据管理单元接收数据包后,依读取到的包头信息,在存储单元中查找相应的接收方,并将数据包发送给相应的接收方客户端。
优选的,所述的服务器端包括解析单元,其中具有与客户端的组包单元以及解析单元中相同的数据包协议,用于接收数据管理单元接收到的数据包,并将其解包存储在存储单元中。
优选的,所述的服务器端包括一个或多个提供数据的计算机服务器及其上的运行软件,用于处理用户数据。
优选的,所述数据包括该用户的在线状态,用户基本资料,以及该用户所在的组织的架构。
为了更好地实现发明目的,本发明进一步提供一种数据更新方法,包括:
A.发送方客户端依特定特定数据包协议生成变更数据的数据包,并上报该数据包;
B.服务器端将收到的数据包即时转发给接收方客户端;
C.接收方依与发送方相同的数据包协议解析数据包,并展示解析后的数据。
优选的,步骤B包括:
B1.服务器端读取数据包的包头信息;
B2.服务器端依据包头信息查找对应的接收方;
B3.将数据包下发给接收方客户端。
优选的,步骤A还包括:
A1.发送方客户端存储变更后的数据,并依照特定方式展示变更后的数据。
优选的,步骤B包括:
B5.服务器解析接收到的数据包;
B6.存储解析后的数据。
相对于现有技术,本发明的有益效果是:由于本发明将发送方客户端发送的变更数据即时转发,从而使得数据的更新具备时效性;同时,由于本发明在客户端设置了具有相同数据包协议的组包单元以及解析单元,使得数据包在经过服务器端转发的过程中,不需要服务器进行转发以外过多的额外的操作,从而减轻了服务器端的压力。
附图说明
图1是本发明数据更新系统的示意图;
图2是本发明数据更新系统的发送方客户端的实现流程图;
图3是本发明数据更新系统的服务器端的实现流程图;
图4是本发明数据更新系统的接收方客户端的实现流程图;
图5是本发明应用于在线企业的实现流程图;
图6是本发明的原理效果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明数据更新系统及方法的主要思路在于:在客户端上设置监测单元,以及遵从相同协议的组包单元及解析单元,当监测单元监测到数据的变更,即通过组包单元将相应的变更后的数据打包上报服务器端;服务器端在接到数据包后,即时直接将该数据包下发给相应的接收方客户端;接收方客户端再通过解析单元解析该数据包。
在此基础上,服务器端在数据更新的过程中仅仅充当数据包的传递者,并不对其进行处理。
下面结合附图对本发明的实施方式作详细的描述。
如图1所示,在本发明的实施例中,一种数据更新系统100包括服务器端110,发送方客户端120,以及接收方客户端130。需要说明的是,在本实施例中,用一个接收方客户端来说明仅为了表述的方便,而在实际中通常一个发送方对应多个接收方。
其中,服务器端110为一个或多个提供数据的计算机服务器及其上的运行软件,用于处理用户数据,其包括对数据上报及发布进行管理的数据管理单元112,对发送方客户端120上报的数据包进行解析的解析单元114,以及用于存储全部用户信息的存储单元116。当服务器端110为多个服务器的组合时,上述的数据管理单元112,解析单元114,以及存储单元116可以分别位于不同的服务器上。同样,上述的数据管理单元112,解析单元114,以及存储单元116其中的任一个也可能由一个以上的服务器上的不同单元共同组和而成。
所述的数据管理单元112执行以下工作:接收发送方客户端120上报的数据;读取发送方的用户标识;将数据发送给解析单元114;并依读取出的用户标识在存储单元116中查找出相应的接收方客户端130;发布数据给该接收方客户端130。
所述的解析单元114执行以下工作:接受数据管理单元112发送的数据;对该数据进行解析,即解析出该数据的内容是用户的在线状态,用户基本资料,或者是该用户所在的组织的架构等;将解析出的数据发送给存储单元116存储。
所述的存储单元116中建立存储有数据表,该表中至少存储有每一发送方与其相应命令的接收方之间的关联关系;而在一般应用中,其中还存储有每一用户的其他数据。
所述发送方客户端120是指向用户提供即时通信业务终端功能的终端设备及其上运行的软件,包括用户状态监测单元121,组包单元122,存储单元123,解析单元124,以及显示单元125。
监测单元121用于监测用户的数据改变,并将相应数据改变信息发送给组包单元122以及存储单元123。
组包单元122用于将接收到的数据变更信息依既定的规则组成数据包,其中,数据包的格式包括,包头,包体,包尾三部分。包头部分包括客户端的版本号,协议命令,包序号,以及发包用户的用户标识等用于标识数据包的信息,包体中包涵有最新更改的数据信息,包尾部分包含有特定的字符,用于标识该数据包的结束。
存储单元123用于在客户端存储用户的数据。
解析单元124用于解析收到的数据包。
显示单元125用于显示相关数据。
所述的接收方客户端130与发送方客户端120,具有同样的元器件及相应软件,将其与发送方客户端120分开说明,主要是为了方便。客户端往往同时担任发送方客户端及接收方客户端的角色,并同时完成用户客户端及联系人客户端完成的功能。另外,所述的发送方客户端120与接收方客户端130的终端设备可以是计算机,个人数位助理(PDA),手机等设备,本发明的最佳实施方式为计算机。
结合图2所示,本发明一种数据更新的方法100的发送方客户端120的实现流程如下:
步骤S201,监测单元121监测用户数据的变更,将监测到的变更后的数据发送给组包单元122以及存储单元123;
步骤S202,组包单元122对接收到的数据进行打包处理;
步骤S203,组包单元122将数据包上报给服务器端110;
步骤S204,存储单元123存储变更后的数据;
步骤S205,显示单元125将变更后的数据以特定形式显示出来,比如,用特定图标显示用户的特定在线状态,直接显示用户基本资料,以及用户所在的组织的架构等。
结合图3所示,服务器端110的实现流程如下:
步骤S301,数据管理单元112接收发送方客户端120上报的数据包;
步骤S302,数据管理单元112读取数据包的包头信息,确认客户端的版本号,协议命令,包序号,以及发包用户的用户标识等用于标识数据包的信息;
步骤S303,数据管理单元112依据读取出的用户标识在存储单元116中查找其对应的接收方;
步骤S304,将数据包发送给相应的接收方客户端130,并同时发送给解析单元114;
步骤S305,解析单元114依包头信息中的协议命令解析数据包;
步骤S306,存储单元116存储解析后的数据。
结合图4所示,接收方客户端130的实现流程如下:
步骤S401,接收服务器端110发送的数据包;
步骤S403,解析单元134读取包头信息,并根据包头信息解析包体的内容,将该解析后的数据发送给显示单元135,以及存储单元133;
步骤S404,显示单元135依据特定形式展示解析后的数据;
步骤S405,存储单元133存储相应数据。
下面描述一下,当本发明的实施方式应用于在线企业的实例。其中,为了区别其他的协议,特将应用本发明时事先约定好的数据包传输协议,命名为“透传协议”。
创建者成功创建了在线企业后,同时就建立了企业的组织结构以及成员的相互关系链,企业中的各个员工需要实时感知其他员工的状态以及基本信息。如图5所示,当在线企业中某个员工状态由离线变成在线,或者由在线变成离线的时候,或者用户修改了自己的账号或者姓名的时候(S501),客户端首先根据透传协议打包相关的数据,并将该透传协议发送给中继中转服务器(S502),如果用户是修改了个人资料,客户端还需要发送另外一条命令协议给企业扩展服务器修改员工资料。中继中转服务器把接收到的透传协议中转给群服务器(S503),群服务器会首先判断是否是透传协议(S504),如果是透传协议,则根据企业号码查找到属于该在线企业的所有成员列表(S505),把用户打包的协议数据进行企业内部消息广播(S506)。在线企业中其他成员的系统消息模块接收到了该消息后,判断是否是透传协议,如果是,则加载透传协议解析模块,按照互相约定的协议格式进行消息解析,分离出用户的状态,账号和姓名(S507),接着调用文件存储模块存储员工资料(S508),最后更新在线企业面板管理模块,实现实时更新内部员工的状态以及基本资料(S509)。
当在线企业的管理员修改了企业组织结构或者修改了员工所在部门关系的时候,这个时候需要管理员把组织结构与人员相互关系打包传输到群服务器,同时要把这些信息同样按照透传协议通过服务器传输广播给企业中所有成员,所有成员更新本地储存以及企业面板,实现实时感知企业结构信息以及员工关系的变化。
采用这样的实现方案不但可以保证减轻服务器的压力,可以不再受限制于定时器的定时间隔,可以保证真正的实时感知企业组织结构,员工状态以及基本信息的变化,而且只要用户有变化,就会通过透传协议传输到在线企业中其他员工,保证快速的实时感应。服务器与客户端的交互效果如图6所示,从图中可以看出,基本上后台服务器端可以作为一种透明的传输节点,以虚线形式表现,而同样是员工之间建立了一种虚拟的连接,以虚线连接表示。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1、一种数据更新系统,包括多个客户端,以及连接并实现客户端间信息交互的服务器端,其中所述客户端包括监测单元,存储单元以及显示单元,其特征在于:所述客户端还包括具有特定数据包协议的组包单元,用于接收监测单元监测到的变更后的数据,并将其组包后上报给服务器端;以及解析单元,具有与组包单元相同的数据包协议,用于接收并解析服务器端下发的数据包,并将解析后的数据发送给存储单元以及显示单元。
2、如权利要求2所述的数据更新系统,其特征在于:所述服务器端包括数据管理单元以及存储单元,数据管理单元接收数据包后,依读取到的包头信息,在存储单元中查找相应的接收方,并将数据包发送给相应的接收方客户端。
3、如权利要求1或2所述的数据更新系统,其特征在于:所述的服务器端包括解析单元,其中具有与客户端的组包单元以及解析单元中相同的数据包协议,用于接收数据管理单元接收到的数据包,并将其解包存储在存储单元中。
4、如权利要求1或2所述的数据更新系统,其特征在于:所述的服务器端包括一个或多个提供数据的计算机服务器及其上的运行软件,用于处理用户数据。
5、如权利要求1或2所述的数据更新系统,其特征在于:所述数据包括该用户的在线状态,用户基本资料,以及该用户所在的组织的架构。
6、一种数据更新方法,包括:
A.发送方客户端依特定特定数据包协议生成变更数据的数据包,并上报该数据包;
B.服务器端将收到的数据包即时转发给接收方客户端;
C.接收方依与发送方相同的数据包协议解析数据包,并展示解析后的数据。
7、如权利要求6所述的数据更新方法,其特征在于:步骤B包括:
B1.服务器端读取数据包的包头信息;
B2.服务器端依据包头信息查找对应的接收方;
B3.将数据包下发给接收方客户端。
8、如权利要求6或7所述的数据更新方法,其特征在于:步骤A还包括:
A1.发送方客户端存储变更后的数据,并依照特定方式展示变更后的数据。
9.如权利要求6或7所述的数据更新方法,其特征在于:步骤B包括:
B5.服务器解析接收到的数据包;
B6.存储解析后的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100355391A CN100492986C (zh) | 2005-06-23 | 2005-06-23 | 一种数据更新系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100355391A CN100492986C (zh) | 2005-06-23 | 2005-06-23 | 一种数据更新系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1885786A true CN1885786A (zh) | 2006-12-27 |
CN100492986C CN100492986C (zh) | 2009-05-27 |
Family
ID=37583779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100355391A Active CN100492986C (zh) | 2005-06-23 | 2005-06-23 | 一种数据更新系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100492986C (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008141588A1 (fr) * | 2007-05-23 | 2008-11-27 | Tencent Technology (Shenzhen) Company Limited | Procédé et dispositif servant à mettre à jour des contenus de réseau |
WO2009089707A1 (fr) * | 2007-12-20 | 2009-07-23 | Tencent Technology (Shenzhen) Company Limited | Procédé d'affichage d'informations et son terminal utilisateur |
WO2010145107A1 (zh) * | 2009-06-15 | 2010-12-23 | 中兴通讯股份有限公司 | 一种用于彩信业务的综合数据网管系统、设备及方法 |
CN102801643A (zh) * | 2011-05-27 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 一种显示用户更新信息的方法和系统 |
CN103458024A (zh) * | 2013-08-30 | 2013-12-18 | 国电南瑞科技股份有限公司 | 一种用于列车自动监控系统人机界面数据更新及同步方法 |
CN104378746A (zh) * | 2013-11-19 | 2015-02-25 | 北京齐尔布莱特科技有限公司 | 短信发送方法和系统 |
CN104378304A (zh) * | 2013-08-14 | 2015-02-25 | 腾讯科技(深圳)有限公司 | 灰度发布的控制方法、装置及系统 |
CN106941515A (zh) * | 2017-01-24 | 2017-07-11 | 北京元心科技有限公司 | 企业移动管理组织结构同步方法及系统 |
-
2005
- 2005-06-23 CN CNB2005100355391A patent/CN100492986C/zh active Active
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008141588A1 (fr) * | 2007-05-23 | 2008-11-27 | Tencent Technology (Shenzhen) Company Limited | Procédé et dispositif servant à mettre à jour des contenus de réseau |
WO2009089707A1 (fr) * | 2007-12-20 | 2009-07-23 | Tencent Technology (Shenzhen) Company Limited | Procédé d'affichage d'informations et son terminal utilisateur |
WO2010145107A1 (zh) * | 2009-06-15 | 2010-12-23 | 中兴通讯股份有限公司 | 一种用于彩信业务的综合数据网管系统、设备及方法 |
CN102801643A (zh) * | 2011-05-27 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 一种显示用户更新信息的方法和系统 |
CN104378304A (zh) * | 2013-08-14 | 2015-02-25 | 腾讯科技(深圳)有限公司 | 灰度发布的控制方法、装置及系统 |
CN104378304B (zh) * | 2013-08-14 | 2019-04-02 | 腾讯科技(深圳)有限公司 | 灰度发布的控制方法、装置及系统 |
CN103458024A (zh) * | 2013-08-30 | 2013-12-18 | 国电南瑞科技股份有限公司 | 一种用于列车自动监控系统人机界面数据更新及同步方法 |
CN103458024B (zh) * | 2013-08-30 | 2016-08-10 | 国电南瑞科技股份有限公司 | 一种用于列车自动监控系统人机界面数据更新及同步方法 |
CN104378746A (zh) * | 2013-11-19 | 2015-02-25 | 北京齐尔布莱特科技有限公司 | 短信发送方法和系统 |
CN106941515A (zh) * | 2017-01-24 | 2017-07-11 | 北京元心科技有限公司 | 企业移动管理组织结构同步方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN100492986C (zh) | 2009-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1885786A (zh) | 一种数据更新系统及方法 | |
CN101080712A (zh) | 旁路三层同步系统的中间同步服务器 | |
CN1908970A (zh) | 分布式的信息发布/订阅系统 | |
CN1859407A (zh) | 一种保障专线用户上网的方法 | |
CN101039310A (zh) | 链路共享服务装置以及通信方法 | |
CN101079869A (zh) | 一种基于分布式的数据同步方法及系统 | |
CN1694448A (zh) | 将状态信息传送到计算机资源的用户的方法和系统 | |
CN102946376A (zh) | 一种异步通讯的实现方法 | |
CN101448004A (zh) | 基于即时通信的用户状态发布方法、服务器及系统 | |
CN104657841A (zh) | 快件投递方法、投递处理方法及快递柜终端和服务系统 | |
CN103942324A (zh) | 数据实时同步系统及方法 | |
CN1852160A (zh) | 一种数据慢同步的实现方法及系统 | |
CN102469045A (zh) | 一种提升web安全网关并发性能的方法 | |
CN1538316A (zh) | 具有层次拓扑结构的消息中间件系统及消息传递方法 | |
CN209805866U (zh) | 一种会话保持系统 | |
CN102510407A (zh) | 一种对博客进行读、写操作的方法及系统 | |
Wu et al. | The Research and Implementation of parallel web crawler in cluster | |
CN103297477A (zh) | 一种数据采集上报系统及数据处理方法和代理服务器 | |
CN1713621A (zh) | 一种企业即时通信方法及系统 | |
CN201910071U (zh) | 一种基于3g网络的电子商务系统 | |
US20100057893A1 (en) | Server, system and method for providing dynamic domain name service | |
CN114793244B (zh) | 一种区块链的资源处理方法、装置、设备和介质 | |
KR100837434B1 (ko) | 클라이언트와 서버 간의 인터페이스를 수행하는 매개장치및 그의 인터페이스방법 | |
CN114866597B (zh) | 一种分组管理客户端连接方法以及系统 | |
CN103533001A (zh) | 基于http多重代理的通信方法和系统、中间代理服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |