一种互联网站内消息的通信方法、装置、服务器及系统的制作方法

文档序号:7648895阅读:140来源:国知局
专利名称:一种互联网站内消息的通信方法、装置、服务器及系统的制作方法
技术领域
本发明属于网络通信领域,尤其涉及一种互联网站内消息的通信方法、装置、服务器和系统。
背景技术
随着计算机技术和网络技术的飞速发展,互联网在人们的日常生活、学习和工作中发挥的作用也越来越大。相应地,网站也迅速发展起来。
目前,很多网站都提供有站内消息通讯机制,方便用户之间通讯。站内消息是一种网站内部注册用户之间发送的信息,例如有些网站的小纸条,站内消息、打招呼等。网站显示用户接收的站内新消息以及其数量等信息,以及时提醒用户查收新的站内消息。由于互联网呈现内容的特殊模式,传统的Web1.0网站只有在刷新整个页面时或者跳转到其它页面时,才能获得站内消息的相关信息。如果用户停留在某个具体页面不刷新整个网页,页面上的内容不会变化,因此用户无法获知是否接收到站内新消息。由于用户的站内新消息不能及时主动显示,导致用户不能及时发现是否接收到站内新消息,不但给用户的通信造成不便,而且降低了用户的网络体验。
目前,采用异步Javascript和XML结合的Ajax(Asynchronous JavaScript andXML技术,可以在不刷新整个网页页面的前提下更新网页的局部数据。因此,站内消息可以借助Ajax技术及时显示用户收到的站内新消息。但网页局部内容的呈现必须由客户端执行一些脚本程序,主动向服务器发起请求才能开始。因此,用户为了实时地发现新的站内消息,必须在客户端周期性地向服务器发送请求,查询当前用户信息的变化情况。
为了周期性获得信息,客户端需要消耗很多计算资源。同时,这种方式对服务器的压力也很大。在用户量很大时,客户端的负载将线性增长。在没有收到站内新消息的情况下,用户周期性地获取数据对计算资源和网络带宽是很严重的浪费。

发明内容
本发明实施例的目的在于提供一种互联网站内消息的通信方法,旨在解决现有技术主动获取站内新消息导致客户端资源消耗大的问题。
本发明实施例是这样实现的,一种互联网站内消息的通信方法,包括下述步骤接收客户端发送的携带有用户身份标识信息的异步请求;根据用户身份标识信息查询对应的站内新消息;向客户端返回请求响应数据,请求响应数据中携带有查询到的与用户身份标识信息对应的站内新消息的相关信息。
本发明实施例的另一目的在于提供一种互联网站内消息的通信装置,包括消息数据库,用于存储用户的站内消息;网关程序模块,用于接收客户端携带有用户身份标识信息的异步请求,以及向客户端返回请求响应数据,请求响应数据中携带有与用户身份标识信息对应的站内新消息的相关信息;消息状态查询模块,用于根据用户身份标识信息查询消息数据库,获取与用户身份标识信息对应的站内新消息,并将与用户身份标识信息对应的站内新消息的相关信息发送给网关程序模块。
本发明实施例的又一目的在于提供一种互联网服务器,包括消息数据库,用于存储用户的站内消息;网关程序模块,用于接收携带有用户身份标识信息的异步请求,以及返回请求响应数据,请求响应数据中携带有与用户身份标识信息对应的站内新消息的相关信息;消息状态查询模块,用于根据用户身份标识信息查询消息数据库,获取与用户身份标识信息对应的站内新消息,并将与用户身份标识信息对应的站内新消息的相关信息发送给网关程序模块。
本发明实施例的再一目的在于提供一种互联网通信系统,包括客户端,用于向服务器发送携带有用户身份标识信息的请求,以及接收服务器返回的请求响应数据,并向用户显示请求响应数据中携带的与用户身份标识信息对应的站内新消息的相关信息;以及服务器端,用于接收客户端发送的携带有用户身份标识信息的请求,根据用户身份标识信息查询与用户身份标识信息对应的站内新消息,并向客户端返回携带有站内新消息的相关信息的请求响应数据。
本发明实施例利用所有异步获取数据的请求,查询站内新消息,并捎带回站内新消息的相关信息,不需要运行独立的程序定时查询后台的消息数据程库,也不需要为了获取站内新消息的相关信息,而单独地发送请求,对用户没有额外的计算负载,而且用户的体验也更好。


图1是本发明实施例提供的互联网站内消息的通信方法的流程图;图2是本发明实施例提供的互联网站内消息的通信方法的信息交互关系示意图;图3是本发明实施例提供的通信系统的示意图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过接收客户端发送的携带有用户身份标识信息的异步请求时,主动根据用户身份标识信息查询用户的站内新消息,并在向客户端返回异步请求的响应时携带查询到的该用户的站内新消息的相关信息。
在本发明实施例中,采用信息捎带技术携带用户在站内的新消息。信息捎带技术在信息传送的过程中,附带上其它一些附加的信息,这些附加信息不是信息的主体,主要是一些经常性获取的、非重要性信息,信息捎带技术不需要建立额外的网络连接,信息的接收端也不需要独立的接收进程专门负责接收此类消息。
图1所示为本发明实施例提供的互联网站内消息的通信方法的流程图,图2所示为本发明实施例提供的互联网站内消息的通信方法的信息交互关系示意图。
在步骤S101中,服务器接收客户端发送的一个与获取站内新消息相关信息无关的异步请求,该异步请求可以是任何的通用网关接口(Common GatewayInterface,CGI)请求,例如可以是用户登录网站后发送的获取个人信息的CGI请求或其它请求,携带有当前用户在网站系统里注册的用户标识,例如用户ID;在步骤S103中,在服务器端,启动相应的CGI服务程序,如果客户端发送的是获取个人信息的CGI请求,则服务器端启动对应获取个人信息的CGI服务程序,每一个CGI服务程序通过调用消息队列(Message Queue,MSQ)对后台服务器的数据库进行操作,数据库中记录有每个用户的每条消息的状态记录,包括未提送未读、已提送未读、已读和删除等状态,因此可以根据用户的ID在数据库查找所有未读(包括未提送未读和已提送未读)的消息(站内新消息),并且可以根据标记为已提送未读和未提送未读,区分站内新消息中哪些是已经通知过用户的站内新消息,哪些是还没有通知过用户的站内新消息。当判断有站内新消息时,执行步骤S105,否则执行步骤S110;在步骤S105中,将该用户的站内新消息的相关信息,包括已提送站内新消息的数量、未提送站内新消息的数量以及每条站内新消息的摘要信息返回给上层的CGI,例如返回给个人信息服务的上层CGI,并将数据库中未提送未读的站内新消息的状态记录修改为已提送未读;在步骤S107中,在返回CGI响应数据(如个人信息服务CGI响应)时,将步骤S105中的站内新消息的相关信息(已提送站内新消息的数量、未提送站内新消息的数量以及每条站内新消息的摘要信息)附带在CGI响应数据(例如附带在个人信息CGI响应数据中)返回给客户端的前台程序;在步骤S109中,客户端的前台程序在得到返回的CGI响应数据时,解析数据中携带的站内新消息的相关信息,并显示站内新消息的相关信息。例如在获得个人信息的同时,将用户每个站内新消息摘要内容通过告示贴等方式显示出来,同时更新显示网页上已提送站内新消息(对应已提送站内新消息)和本次站内新消息(对应未提送站内新消息)这两项的数字。当然也可以采用告示贴的方式显示所有相关信息。
因此,在本发明实施例中,用户虽然发送的是与获取站内消息无关的异步请求,但却可以及时获取站内新消息的相关信息。
在步骤S110中,将没有站内新消息的信息返回给上层的CGI,CGI响应在返回时将没有站内新消息这一信息附带返回给前台程序,前台程序解析后以告示贴等方式显示给用户没有站内新消息这一信息,或者不给用户提示;或者不返回任何数据给上层的CGI,根据需要客户端也可以给或不给用户提供没有站内新消息的提示。
本发明实施例中,数据库也可以只记录消息的未读这一状态,而并不将未读状态进一步划分已提送未读和未提送未读,因此不用对数据库中站内新消息的状态记录进行修改,只将站内新消息数量和站内新消息的摘要信息附加给CGI响应即可,在网页上也只更新站内新消息的数量。
以下将简要描述与本发明实施例的互联网站内消息的通信方法对应的互联网站内消息的通信装置。由于本发明实施例的互联网站内消息的通信装置与本发明实施例的互联网站内消息的通信方法对应,因此只对其做简要描述。
本发明实施例的互联网站内消息的通信装置包括消息数据库,用于存储用户的站内消息;网关程序模块,用于接收客户端携带有用户身份标识信息的异步请求,以及向客户端返回请求响应数据,请求响应数据中携带有与用户身份标识信息对应的站内新消息的相关信息;消息状态查询模块,用于根据用户身份标识信息查询消息数据库,获取与用户身份标识信息对应的站内新消息,并将与用户身份标识信息对应的站内新消息的相关信息发送给网关程序模块。其中,站内新消息为状态记录为未读的站内消息,站内新消息的相关信息包括未读站内消息的数量和每条未读站内消息的摘要信息。
以下将结合本发明实施例的互联网站内消息的通信方法描述本发明实施例的互联网通信系统。
图3所示为本发明实施例提供的互联网通信系统的结构,客户端浏览器10可以向服务器端发送数据,并接收服务器端返回的数据,服务器端包括服务器上网关程序模块21、消息状态查询模块23和消息数据库25。
服务器端的服务器上网关程序模块21接收客户端浏览器10发送的任意一个CGI请求,该请求包括了当前用户在网站系统里注册的用户标识,在该CGI请求被服务器上网关程序模块21调用时,服务器上网关程序模块21同时调用消息状态查询模块23的接口。
消息状态查询模块23的接口被调用后,查询消息数据库25中用户站内消息当前的状态记录,判断该用户当前是否接收到站内新消息。消息数据库25中存储有属于每个用户ID的每条消息的状态记录,包括未提送未读、已提送未读、已读和删除等状态。因此,消息状态查询模块23查找所有未读的消息,便能获得当前用户收到的所有站内新消息。
如果消息状态查询模块23查询到有未读的消息,则将标记为未读的消息的相关信息(已提送站内新消息的数量、未提送站内新消息的数量以及每条站内新消息的摘要信息)发送给服务器上网关程序模块21,并将状态记录为未提送未读的站内新消息修改为已提送未读,如果没有站内新消息,将没有站内新消息这一信息发送给服务器上网关程序模块21。服务器上网关程序模块21将消息状态查询模块23发送的信息(包括有站内新消息和没有站内新消息两种情况)作为附加信息附加到CGI响应数据中返回给客户端浏览器10。
客户端浏览器10的前台程序对接收到CGI响应数据进行处理,对其中的附加信息进行解析,如果解析出附加信息中包括站内新消息的相关信息,则以告示贴或者其它形式提示用户每条站内新消息的摘要信息,并刷新网页上已提送站内新消息的数量和本次站内新消息的数量,或者将上述信息都以告示贴的形式显示。如果解析出用户目前没有站内新消息,同样以告示贴或者其它形式提示用户,或者不给用户任何提示。
或者,消息状态查询模块23在查询到没有站内新消息时,不返回任何数据给服务器上网关程序模块21,服务器上网关程序模块21也不给返回的响应附加任何与站内新消息相关的信息,客户端浏览器10则以告示贴或者其它形式提示用户没有站内新消息,或者不给用户任何提示。
本发明实施例还提供一种互联网服务器,包括服务器上网关程序模块21、消息状态查询模块23和存放消息的消息数据库25,结构和功能与图3所示的服务器端完全相同,因此不在赘述。
本发明实施例提供的互联网通信系统和服务器中,消息数据库25可以只记录消息的未读状态,不必将未读状态进一步划分为已提送未读和未提送未读,消息状态查询模块23查询未读消息后,不必对数据库进行修改,发送给服务器上网关程序模块21的信息也只有站内新消息的数量和摘要。
本发明实施例提供的互联网站内消息的通信方法、装置、服务器和系统,利用网页上所有异步获取数据的请求,查询站内新消息,并捎带回站内新消息的数量等信息,查询发生在所有CGI后台服务程序被调用的过程,如果网站里很多CGI交互操作,则查询站内新消息的实时性较高。而且,前台程序不需要运行独立的程序定时查询后台的消息数据程库,也不需要为了获取站内新消息的数目,而单独地发送CGI请求,对用户没有额外的计算负载。后台的服务器也不需要建立单独的消息查询连接。因此,在保证实时获得站内新消息内容和数量等信息的同时,减轻了客户端和服务器端的负载,使前后台资源的消耗都得到缓解。在不增加客户端以及服务器消耗过多资源的前提下,达到及时显示用户接收的站内新消息的目的,有利于用户的体验。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包括在本发明的保护范围之内。
权利要求
1.一种互联网站内消息的通信方法,其特征在于,所述方法包括下述步骤接收客户端发送的携带有用户身份标识信息的异步请求;根据所述用户身份标识信息查询对应的站内新消息;向客户端返回请求响应数据,所述请求响应数据中携带有查询到的与所述用户身份标识信息对应的站内新消息的相关信息。
2.如权利要求1所述的互联网站内消息的通信方法,其特征在于,所述根据用户身份标识信息查询对应的站内新消息的步骤具体为调用消息队列,根据所述用户身份标识信息在数据库中查找状态记录为未读的站内消息;所述站内新消息的相关信息包括未读站内消息的数量和每条未读站内消息的摘要信息。
3.如权利要求2所述的互联网站内消息的通信方法,其特征在于,所述未读的站内消息包括已提送未读的站内消息以及未提送未读的站内消息;在所述根据用户身份标识信息查询对应的站内新消息之后,所述方法进一步包括下述步骤将查询到的站内新消息的状态记录从未提送未读修改为已提送未读。
4.如权利要求1所述的互联网站内消息的通信方法,其特征在于,所述方法进一步包括下述步骤当未查询到有所述对应的站内新消息时,向客户端返回请求响应数据,所述请求响应数据携带没有站内新消息的信息,或只向客户端返回请求响应数据。
5.一种互联网站内消息的通信装置,其特征在于,所述装置包括消息数据库,用于存储用户的站内消息;网关程序模块,用于接收客户端携带有用户身份标识信息的异步请求,以及向客户端返回请求响应数据,所述请求响应数据中携带有与所述用户身份标识信息对应的站内新消息的相关信息;消息状态查询模块,用于根据所述用户身份标识信息查询所述消息数据库,获取与所述用户身份标识信息对应的站内新消息,并将与所述用户身份标识信息对应的站内新消息的相关信息发送给所述网关程序模块。
6.如权利要求5所述的互联网站内消息的通信装置,其特征在于,所述站内新消息为状态记录为未读的站内消息,所述站内新消息的相关信息包括未读站内消息的数量和每条未读站内消息的摘要信息。
7.一种互联网服务器,其特征在于,所述服务器包括消息数据库,用于存储用户的站内消息;网关程序模块,用于接收携带有用户身份标识信息的异步请求,以及返回请求响应数据,所述请求响应数据中携带有与所述用户身份标识信息对应的站内新消息的相关信息;消息状态查询模块,用于根据所述用户身份标识信息查询所述消息数据库,获取与所述用户身份标识信息对应的站内新消息,并将与所述用户身份标识信息对应的站内新消息的相关信息发送给所述网关程序模块。
8.如权利要求7所述的互联网服务器,其特征在于,所述站内新消息为状态记录为未读的站内消息,所述站内新消息的相关信息包括未读站内消息的数量和每条未读站内消息的摘要信息。
9.一种互联网通信系统,其特征在于,所述系统包括客户端,用于向服务器发送携带有用户身份标识信息的请求,以及接收服务器返回的请求响应数据,并向用户显示所述请求响应数据中携带的与所述用户身份标识信息对应的站内新消息的相关信息;以及服务器端,用于接收客户端发送的携带有用户身份标识信息的请求,根据所述用户身份标识信息查询与所述用户身份标识信息对应的站内新消息,并向客户端返回携带有所述站内新消息的相关信息的请求响应数据。
10.如权利要求9所述的互联网通信系统,其特征在于,所述服务器端未查询到与所述用户身份标识信息对应的站内新消息的信息时,向客户端返回所述请求响应数据时携带没有站内新消息的信息或只返回所述请求响应数据,所述客户端通过告示贴的形式显示没有新消息或不进行显示。
全文摘要
本发明适用于网络通信领域,提供了一种互联网站内消息的通信方法、装置、服务器及系统,其中互联网站内消息的通信方法包括下述步骤接收客户端发送的携带有用户身份标识信息的异步请求;根据用户身份标识信息查询对应的站内新消息;向客户端返回请求响应数据,请求响应数据中携带有查询到的与用户身份标识信息对应的站内新消息的相关信息。本发明利用异步请求主动为用户查询站内新消息,减轻了客户端的负载,并且有利于客户的体验。
文档编号H04L12/58GK101079848SQ20071007616
公开日2007年11月28日 申请日期2007年6月25日 优先权日2007年6月25日
发明者陈谦 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1