CN109428924B - 应用的在线状态维护方法、接入层组件、应用***及设备 - Google Patents
应用的在线状态维护方法、接入层组件、应用***及设备 Download PDFInfo
- Publication number
- CN109428924B CN109428924B CN201710757797.3A CN201710757797A CN109428924B CN 109428924 B CN109428924 B CN 109428924B CN 201710757797 A CN201710757797 A CN 201710757797A CN 109428924 B CN109428924 B CN 109428924B
- Authority
- CN
- China
- Prior art keywords
- user
- application
- online state
- layer component
- identifier
- 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.)
- Active
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/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- 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/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种应用的在线状态维护方法、接入层组件、应用***及设备,该方法包括:应用的接入层组件接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;该接入层组件根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层的用户。
Description
技术领域
本申请涉及计算机软件技术领域,尤其涉及一种应用的在线状态维护方法、接入层组件及应用***。
背景技术
在现有的大型应用***中,通常由应用服务层组件维护应用的用户的在线状态。由于每个在线用户间隔几秒就需要发送一个维持用户在线状态的保持心跳请求,对于拥有庞大用户群的应用,例如旺旺、支付宝、QQ等,其应用***的用户的在线状态的维护业务量非常大,瞬时的用户的在线状态维护量可达到百万级、千万级乃至亿级。如此大数量的维护业务量,通过应用***的接入层组件如API网关等向应用***的应用服务层组件请求维护用户在线状态,需要消耗应用***中一定量的处理资源。
发明内容
本申请实施例的目的是提供一种应用的在线状态维护方法、接入层组件、应用***及设备,以提高应用***中的用户的在线状态的维护效率,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
为解决上述技术问题,本申请实施例是这样实现的:
第一方面,提出了一种应用用户的在线状态维护方法,该方法包括:
应用的接入层组件接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
该接入层组件根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
第二方面,提出了一种应用的接入层组件,该接入层组件包括:
接收单元,接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
维护单元,根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
第三方面,提出了一种电子设备,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,该可执行指令在被执行时使该处理器执行以下操作:
接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
第四方面,提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序当被包括多个应用程序的电子设备执行时,使得该电子设备执行以下操作:
接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
第五方面,提出了一种应用***,包括应用客户端、应用接入层组件和应用服务层组件,其中,
该应用客户端,向该应用接入层组件发送用户在线状态维护请求,其中,该用户在线状态维护请求携带应用的第一用户标识;
该应用接入层组件,接收该用户在线状态维护请求,并根据该用户在线状态维护请求,维护该应用接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
第六方面,提出了一种应用的在线状态维护方法,该方法包括:
接入层组件接收客户端发送的该应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
该接入层组件根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
第七方面,提出了一种应用的接入层组件,该接入层组件包括:
接收单元,接收客户端发送的该应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
维护单元,根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
第八方面,提出了一种电子设备,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,该可执行指令在被执行时使该处理器执行以下操作:
接收客户端发送的该应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
第九方面,提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序当被包括多个应用程序的电子设备执行时,使得该电子设备执行以下操作:
接收客户端发送的该应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
第十方面,提出了一种应用***,包括应用客户端、应用接入层组件和应用服务层组件,其中,
该应用客户端,向该应用接入层组件发送应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
该应用接入层组件,接收该应用客户端发送的该应用的在线状态维护请求,并根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
由以上本申请实施例提供的技术方案可见,本申请实施例通过在应用的接入层组件根据应用客户端的用户在线状态维护请求维护用户的在线状态,使得应用***中的用户的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护用户在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一个实施例用户在线状态维护的方法流程图。
图2是本申请的一个实施例根据保持心跳请求维护用户在线状态信息的具体流程图。
图3是本申请的一个实施例根据注销请求维护用户在线状态信息的具体流程图。
图4是本申请的一个实施例根据登录请求维护用户在线状态信息的具体流程图。
图5是本申请的一个实施例根据心跳时间维护用户在线状态信息的具体流程图。
图6是本申请的一个实施例应用服务层发送下行消息/下行通知的具体流程图。
图7是本申请的一个实施例应用服务层查询用户在线状态的具体流程图。
图8是本申请的一个实施例应用服务层查询用户在线状态统计信息的具体流程图。
图9是本申请的一个实施例应用服务层发送下线消息的具体流程图。
图10是本申请的一个实施例电子设备的结构示意图。
图11是本申请的一个实施例接入层组件的结构示意图。
图12是本申请的一个实施例应用***的结构示意图。
图13是本申请的一个实施例应用在线状态维护的方法流程图。
图14是本申请的另一个实施例电子设备的结构示意图。
图15是本申请的另一个实施例接入层组件的结构示意图。
图16是本申请的另一个实施例应用***的结构示意图。
具体实施方式
本申请实施例提供一种用户在线状态维护方法及应用接口网关。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1是本申请的一个实施例应用用户的在线状态维护的方法流程图。图1的方法由应用的接入层组件执行。在本申请实施例中,该接入层组件可以API网关等。图1的方法可包括:
S102,应用的接入层组件接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识。
当然,应理解,在本申请实施例中,应用的接入层组件已经和应用的客户端建立长连接,或者说,步骤S102的方法在应用的接入层组件已经和应用的客户端建立长连接之后执行。
长连接的类型可包括多种。具体地,在PC端如笔记本电脑、台式机等的应用中,该长连接可以是套接字(socket)连接;在移动终端如智能手机、平板电脑等的应用中,该长连接也可以是套接字(socket)连接;特别地,当该应用是web应用时,即该应用以web形式登录时,该长连接可以是web socket连接。
在本申请实施例中,接入层组件可通过接入层组件和客户端之间已经建立的长连接,接收该客户端发送的用户在线状态维护请求。
S104,该接入层组件根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态。
其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
应理解,在本申请实施例中,一个应用***可能包括多个接入层组件,该多个接入层组件都对应于应用***的缓存,该多个接入层组件共用该缓存。该缓存可以是一个缓存服务器,或者是由多个缓存服务器构成的一个集群。以支付宝为例,支付宝***的接入层中包括多个API网关,每个API网关都对应到缓存服务器集群上,该缓存服务器集群用于存储登录支付宝的用户的在线状态。其中,该API网关即本申请实施例的接入层组件,该缓存服务器集群即本申请实施例的缓存。
应理解,在本申请实施例中,只有API网关才需要维护用户的在线状态信息,该应用的应用服务层组件不维护用户的在线状态信息,也不缓存用户的在线状态信息。
在本申请实施例中,应用的接入层组件根据应用的客户端的用户在线状态维护请求维护用户的在线状态,使得应用***中的用户的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护用户在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
可选地,作为一个实施例,当该用户在线状态维护请求为登录请求时,步骤S102具体实现为:该接入层组件接收该客户端发送的登录请求,该登录请求携带该第一用户标识和验证信息;
其中,步骤S104具体实现为:该接入层组件根据该登录请求向该应用服务层组件请求验证该第一用户标识和该验证信息的有效性;当该第一用户标识和该验证信息有效时,则该接入层组件在该缓存中存储该第一用户标识对应的用户的在线状态,其中,该第一用户标识对应的用户的在线状态为在线。
应理解,在本申请实施例中,该验证信息可以是密码,或者是电子凭证(Credential)串,或者用户的指纹,或者是用户的脸部特征图等等。Credential串,例如,可以是应用***通过向智能手机或邮箱发送的随机字符串等。用户的脸部特征图,例如,支付宝的刷脸登录功能中所采集的用户的脸部特征图。
在本申请实施例中,接入层组件可根据客户端发送的登录请求,在应用服务层进行验证,并在用户标识和验证信息有效后在缓存中存储该登录请求对应的用户标识的用户的在线状态。
进一步地,在本申请实施例中,该方法还包括:如果该登录验证结果为该第一用户标识和该验证信息有效,该接入层组件将该长连接标记为已登录状态。
可选地,作为另一个实施例,当该用户在线状态维护请求为保持心跳请求时,步骤S104具体实现为:该接入层组件根据接收该保持心跳请求的时间,或根据该保持心跳请求携带的时间戳,更新该缓存中该第一用户标识对应的用户的在线状态中的心跳时间。
在本申请实施例中,通过根据保持心跳请求维护用户在线状态的心跳时间,从而使得接入层组件能够根据心跳时间确定心跳是否超时,从而确定用户是否在线。
可选地,作为再一个实施例,当该用户在线状态维护请求为注销请求时,步骤S104具体实现为:该接入层组件根据该注销请求,删除该缓存中该第一用户标识对应的用户的在线状态数据。
在本申请实施例中,通过根据注销请求删除缓存中对应的用户的在线状态数据,能够及时响应用户的维护操作,提高用户在线状态数据的维护效率。
进一步地,在本申请实施例中,该方法还包括:该接入层组件向该应用服务层组件发送注销该第一用户标识对应的用户的请求,该接入层组件关闭与该客户端之间的长连接。
在本申请实施例中,根据注销请求关闭对应的长连接,从而能够及时释放接入层组件的内存资源。
可选地,作为一个实施例,该方法还可包括:该接入层组件监测该缓存中各用户在线状态对应的心跳时间;如果当前时间距离该第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除该缓存中该第二用户标识对应的用户的在线状态数据,并关闭该第二用户标识对应的长连接。
应理解,心跳周期和心跳时间是用于衡量心跳是否超时的指标。心跳时间通常都在当前时间之前。如果当前时间与心跳时间之间的时间间隔大于心跳周期,则说明心跳超时。
本申请实施例中,通过监测用户在线状态的心跳时间,并在心跳超时后删除缓存中对应的用户的在线状态数据,并关闭接入层组件中对应的长连接,从而能够及时维护非正常退出的用户的在线状态数据。
可选地,作为一个实施例,该方法还可包括:
该接入层组件接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三用户标识;
如果该接入层组件的内存中存在该第三用户标识对应的长连接,则该接入层组件通过该第三用户标识对应的长连接向该第三用户标识对应的客户端发送该下行消息/下行通知。
本申请实施例中,接入层组件通过根据应用服务层组件发送的下行消息/下行通知,判断接入层是否存在对应的用户的长连接,并在存在对应的长连接时通过用户对应的客户端发送下行消息/下行通知,从而能够在应用***中将判断用户是否在线的动作放在接入层组件处理,一定程度上减少了应用服务层的处理资源消耗。
可选地,作为一个实施例,该方法还可包括:
该接入层组件接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三用户标识;
如果该接入层组件的内存中不存在该第三用户标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第三用户标识对应的用户不在线的应答消息。
本申请实施例中,接入层组件通过根据应用服务层组件发送的下行消息/下行通知,判断接入层是否存在对应的用户的长连接,并在不存在对应的长连接时向应用服务层组件反馈用户不在线的应答消息,从而能够在应用***中将判断用户是否在线的动作放在接入层组件处理,一定程度上减少了应用服务层的处理资源消耗。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的用户在线状态查询请求,该用户在线状态查询请求携带第四用户标识,该用户在线状态查询请求用于请求查询该第四用户标识对应的用户的在线状态,该应用服务层组件存储着用户标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第四用户标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第四用户标识对应的用户在线的应答消息。
应理解,在本申请实施例中,应用服务层组件可根据接入层组件在用户登录时发送的登录请求,确定用户标识与接入层组件的对应关系,或者说确定用户与该用户所接入的接入层组件的对应关系。应用服务层组件在发送用户在线状态查询请求时,可根据用户标识与接入层组件的对应关系,确定用户标识对应的接入层组件并发送用户在线状态查询请求。
或者,可选地,作为另一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的用户在线状态查询请求,该用户在线状态查询请求携带第四用户标识,该用户在线状态查询请求用于请求查询该第四用户标识对应的用户的在线状态,该应用服务层组件存储着用户标识与接入层组件的对应关系;如果该接入层组件的内存中不存在该第四用户标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第四用户标识对应的用户不在线的应答消息。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的用户在线状态统计请求,该用户在线状态统计请求用于请求获取该应用的用户的在线状态数据的统计信息;该接入层组件统计该缓存中该应用的用户的在线状态数据并反馈给该应用服务层组件。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的下线请求,该下线请求携带第五用户标识,该下线请求用于踢该第五用户标识对应的用户下线,该应用服务层组件存储着用户标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第五用户标识对应的长连接,则在该缓存中删除该第五用户标识对应的用户的在线状态数据,并通过该第四用户标识对应的长连接向该第五用户标识对应的客户端发送踢下线通知。可选地,该方法还包括:关闭该第四用户标识对应的长连接。
应理解,在本申请实施例中,应用服务层组件可根据接入层组件在用户登录时发送的登录请求,确定用户标识与接入层组件的对应关系,或者说确定用户与该用户所接入的接入层组件的对应关系。应用服务层组件在发送下线请求时,可根据用户标识与接入层组件的对应关系,确定用户标识对应的接入层组件并发送下线请求。
下面,将结合具体的实施例,对本申请实施例的方法作进一步的描述。
图2是本申请的一个实施例根据登录请求维护用户在线状态信息的具体流程图。图2的方法可包括:
201,客户端向API网关发送登录请求。
应理解,该登录请求中也携带应用的用户标识信息,不妨假设该用户标识信息为第一用户标识。
在图2所示实施例中,该客户端可以是包含SDK的客户端,例如Android客户端或苹果客户端。当然,应理解,在具体的应用中,应用的客户端除了手机中的客户端外,还可以是PC机或平板电脑等其它终端设备上的客户端,本申请实施例对此不作限制。此外,该客户端可以是通过应用对应的app或应用程序打开的客户端,或者是通过网页打开的web客户端,本申请实施例在此不作限制。下述图3-图9所示实施例中出现的客户端与本申请实施例的客户端的功能相同。
在本申请实施例中,API网关即为本申请图1所示实施例中的接入层组件。下述图3-图9所示实施例中出现的API网关与本申请实施例的API网关的功能相同。
在本申请实施例中,该登录请求除了携带第一用户标识外,还可携带验证信息。
应理解,在本申请实施例中,该验证信息可以是密码,或者是电子凭证(Credential)串,或者用户的指纹,或者是用户的脸部特征图等等。Credential串,例如,可以是应用***通过向智能手机或邮箱发送的用于校验的随机字符串等。用户的脸部特征图,例如,支付宝的刷脸登录功能中所采集的用户的脸部特征图,等等。
202,API网关向应用服务层发送登录验证请求。
在本申请实施例中,应用服务层即为本申请图1所示实施例中的应用服务层组件,是指应用***中的服务设备。下述图3-图9所示实施例中出现的应用服务层与本申请实施例的应用服务层的功能相同。
API网关接收到客户端发送的登录请求后,可基于该登录请求,向应用服务层发送登录验证请求,请求验证第一用户标识和验证信息的合法性。其中,该登录验证请求也可携带该第一用户标识和验证信息。
203,应用服务层向API网关反馈登录验证结果。
应用服务层可基于登录验证请求,向API网关反馈登录验证结果。当然,应理解,应用服务层还可根据登录验证请求,在验证成功后,确定用户标识与API网关的对应关系,或者说确定用户与该用户所接入的API网关的对应关系。
204,API网关增加用户在线状态信息。
API网关可通过缓存服务器存储访问应用服务层的用户的在线状态信息。应理解,本申请实施例的缓存服务器即为本申请图1所示实施例中的缓存,下述图3-图9所示实施例中出现的缓存服务器与本申请实施例的缓存服务器的功能相同。当然,应理解,在具体的应用中,本申请图1所示实施例中的缓存还可以是由多台缓存服务器构成的缓存服务器集群,等等。
如果该登录验证结果表明该第一用户标识和验证信息有效,则API网关可在缓存服务器上增加第一用户标识对应的用户的在线状态信息,并标记在线状态为在线,同时标记该第一用户标识对应的用户的在线状态信息的心跳时间。
此外,API网关还可将与该客户端的长连接标记为已登录。
当然,应理解,如果该登录验证结果表明该第一用户标识和验证信息无效,则API网关可向客户端反馈登录失败的提示。
在本申请实施例中,根据客户端发送的登录请求,在应用服务层进行验证,并在用户标识和验证信息有效后在缓存服务器中存储该登录请求对应的用户标识的用户的在线状态,为后续的用户的在线状态的维护工作提供了实现的可能。
图3是本申请的一个实施例根据保持心跳请求维护用户在线状态信息的具体流程图。图3的方法可包括:
301,客户端向API网关发送保持心跳请求。
应理解,保持心跳请求中可携带应用的用户标识信息。不妨也假设该用户标识信息为第一用户标识。
在本申请实施例中,客户端已经与API网关建立长连接并成功登录。当客户端登录后,需要向API网关发送保持心跳请求,以保持其在线状态。客户端可通过与API网关之间的长连接发送该保持心跳请求。
应理解,一般情况下,客户端可周期性发送保持心跳请求,发送周期不超过心跳周期。当然,客户端也可根据网络状况等不定时发送保持心跳请求,相邻的两次发送保持心跳请求的时间间隔应小于或等于心跳周期。
302,API网关更新用户在线状态信息。
API网关在接收到保持心跳请求后,可根据API网关接收到保持心跳请求的时间,或者根据保持心跳请求中携带的时间戳,更新缓存服务器中第一用户标识对应的用户的在线状态信息的心跳时间。
当然,API网关在维护用户在线状态信息前,还可判断第一用户标识对应的用户的在线状态信息的心跳时间是否超时,如果没有超时,则更新其心跳时间。
在本申请实施例中,通过根据保持心跳请求维护用户在线状态的心跳时间,从而使得API网关能够根据心跳时间确定心跳是否超时,从而确定用户是否在线。
图4是本申请的一个实施例根据注销请求维护用户在线状态信息的具体流程图。图4的方法可包括:
401,客户端向API网关发送注销请求。
应理解,该注销请求中也携带应用的用户标识信息,不妨也假设该用户标识信息为第一用户标识。
与步骤201类似,客户端也可通过与API网关之间的长连接发送该注销请求。
402,API网关删除用户在线状态信息。
API网关在接收到注销请求后,可根据该注销请求,在缓存服务器中删除第一用户标识对应的用户的在线状态信息。
403,API网关向应用服务层发送注销用户通知。
API网关删除第一用户标识对应的用户在线状态信息后,可向应用服务层发送注销用户通知,该注销用户通知携带第一用户标识,用于通知应用服务层将第一用户标识对应的用户的在线状态注销。
404,API网关关闭与客户端之间的长连接。
API网关删除第一用户标识对应的用户在线状态信息后,还可关闭与客户端之间的长连接,及时释放API网关的资源。
在本申请实施例中,通过根据注销请求删除缓存中对应的用户的在线状态数据,能够及时响应用户的维护操作,提高用户在线状态数据的维护效率。
图5是本申请的一个实施例根据心跳时间维护用户在线状态信息的具体流程图。图5的方法包括:
501,API网关监测心跳。
API网关可周期性监测通过API网关访问的用户的心跳时间。其监测周期可小于心跳周期,或等于心跳周期。
应理解,在本申请实施例中,心跳周期是指用户在线状态信息有效的最大时间。如果用户在线状态信息的心跳时间与当前时间的时间间隔小于心跳周期,则说明心跳未超时;反之,如果用户在线状态信息的心跳时间与当前时间的时间间隔大于心跳周期,则说明心跳超时。
API网关可根据内存中存在的长连接,查询长连接对应的用户标识在缓存服务器中的心跳是否超时。
502,删除心跳超时的用户的在线状态信息。
API网关根据心跳周期和用户在线状态信息的心跳时间,确定用户是否超时。本申请实施例中,不妨假设第二用户标识对应的用户在线状态信息超时。
API网关在监测到用户在线状态信息超时后,可删除对应的用户在线状态信息。
在本申请实施例中,API网关可在缓存服务器中删除第二用户标识对应的用户在线状态信息。
当然,在具体的应用中,如果缓存服务器用数据库记录用户在线状态信息,则API网关可通过执行一个删除语句,直接删除心跳时间与当前时间间隔大于心跳周期的用户在线状态信息。
503,API网关向应用服务层发送注销用户通知。
在本申请实施例中,API网关还可向应用服务层发送注销用户通知,该注销用户通知携带第二用户标识,用于通知应用服务层将第二用户标识对应的用户的在线状态注销。
504,API网关关闭与客户端之间的长连接。
在发送注销用户通知之后,API网关可关闭与第二用户标识对应的客户端之间的长连接。
本申请实施例中,通过监测用户在线状态的心跳时间,并在心跳超时后删除缓存服务器中对应的用户的在线状态数据,并关闭API网关中对应的长连接,从而能够及时维护非正常退出的用户的在线状态数据。
图6是本申请的一个实施例应用服务层发送下行消息/下行通知的具体流程图。图6的方法可包括:
601,应用服务层向API网关发送下行消息/下行通知。
应用服务层向API网关发送给指定用户的下行消息/下行通知。不妨假设该指定用户的用户标识为第三用户标识,则下行消息/下行通知中携带该第三用户标识。
602,API网关发送下行消息/下行通知。
API网关在接收到该下行消息/下行通知后,可根据下行消息/下行通知中的第三用户标识,查询API网关中是否存在该第三用户标识对应的长连接。如果第三用户标识对应的用户通过API网关访问应用服务层,且用户在线状态信息的心跳未超时,则API网关中会存在用户登录后的长连接。
如果API网关中存在该第三用户标识对应的长连接,则API网关可通过该长连接,将该下行消息/下行通知发送给该长连接对应的客户端。客户端接收到该下行消息/下行通知的处理操作可参考现有技术。
当然,应理解,如果API网关中不存在该第三用户标识对应的长连接,则API网关可给应用服务层返回用户不在线的应答消息。
本申请实施例中,API网关通过根据应用服务层发送的下行消息/下行通知,判断API网关中是否存在对应的用户的长连接,并在存在对应的长连接时通过用户对应的客户端发送下行消息/下行通知,从而能够在应用***中将判断用户是否在线的动作放在接入层处理,一定程度上减少了应用服务层的处理资源消耗。
图7是本申请的一个实施例应用服务层查询用户在线状态的具体流程图。图7的方法包括:
701,应用服务层向API网关发送用户在线状态查询请求。
应理解,在用户登录时,应用服务层可基于登录验证请求,在验证成功后,确定用户标识与API网关的对应关系,或者说确定用户与该用户所接入的API网关的对应关系。
应用服务层向API网关发送指定用户的用户在线状态查询请求。不妨假设该指定用户的用户标识为第四用户标识,则用户在线状态查询请求中携带该第四用户标识,该用户在线状态查询请求用于请求查询该第四用户标识对应的用户的在线状态。
应用服务层可确定第四用户标识的API网关,并向该API网关发送该用户在线状态查询请求。
702,API网关向应用服务层发送用户在线状态。
API网关在接收到该在线状态查询请求后,可根据在线状态查询请求中的第四用户标识,查询API网关中是否存在该第四用户标识对应的长连接。
如果API网关中存在该第四用户标识对应的长连接,则API网关可向应用服务层反馈所述第四用户标识对应的用户在线的应答消息;
如果API网关中不存在该第四用户标识对应的长连接,则API网关可向应用服务层反馈所述第四用户标识对应的用户不在线的应答消息。
图8是本申请的一个实施例应用服务层查询用户在线状态统计信息的具体流程图。图8的方法包括:
801,应用服务层向API网关发送用户在线状态统计请求。
应用服务层向API网关发送用户在线状态统计请求,请求获取应用的用户的在线状态数据的统计信息。
802,API网关统计用户在线状态信息。
API网关在接收到该在线状态统计请求后,可在缓存服务器中统计应用的用户的在线状态数据。
803,API网关向应用服务层反馈用户在线状态统计信息。
API网关统计完毕后,即可向应用服务层反馈用户在线状态数据统计信息。
图9是本申请的一个实施例应用服务层发送下线消息的具体流程图。图9的方法包括:
901,应用服务层向API网关发送下线请求。
应用服务层向API网关发送给指定用户的下线请求。不妨假设该指定用户的用户标识为第五用户标识,则下线请求中携带该第五用户标识,用于踢第五用户标识对应的用户下线。
902,API网关删除用户在线状态信息。
API网关在接收到该下行请求后,可根据下行请求中的第五用户标识,在缓存服务器中删除第五用户标识对应的用户在线状态信息。
903,API网关发送下线通知。
API网关可可根据下行请求中的第五用户标识,通过第五用户标识对应的长连接向第五用户标识对应的客户端发送下线通知,通知用户下线。
904,API网关关闭与客户端之间的长连接。
在发送下线通知之后,API网关可关闭与第五用户标识对应的客户端之间的长连接。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图10是本申请的一个实施例电子设备的结构示意图。请参考图10,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成接入层组件。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
上述如本申请图1-9所示实施例揭示的接入层组件或API网关执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,在本申请实施例中,只有API网关才需要维护用户的在线状态信息,该应用的应用服务层组件不维护用户的在线状态信息,也不缓存用户的在线状态信息。
该电子设备还可执行图1的方法,并实现接入层组件或API网关在图1-9所示实施例的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法。
图11是本申请的一个实施例接入层组件的结构示意图。请参考图11,在一种软件实施方式中,接入层组件可包括:
接收单元1110,接收该应用的客户端发送的该应用的用户在线状态维护请求,其中,该用户在线状态维护请求携带该应用的第一用户标识;
维护单元1120,根据该用户在线状态维护请求,维护该接入层组件对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储特定用户的在线状态,该特定用户为访问该应用的应用服务层组件的用户。
本申请实施例中,应用的接入层组件根据应用的客户端的用户在线状态维护请求维护用户的在线状态,使得应用***中的用户的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护用户在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
应理解,在本申请实施例中,只有API网关才需要维护用户的在线状态信息,该应用的应用服务层组件不维护用户的在线状态信息,也不缓存用户的在线状态信息。
可选地,作为一个实施例,当该用户在线状态维护请求为登录请求时,接收单元1110具体用于:接收该客户端发送的登录请求,该登录请求携带该第一用户标识和验证信息;
其中,维护单元1120具体用于:根据该登录请求向该应用服务层组件请求验证该第一用户标识和该验证信息的有效性;当该第一用户标识和该验证信息有效时,在该缓存中存储该第一用户标识对应的用户的在线状态,其中,该第一用户标识对应的用户的在线状态为在线。
进一步地,在本实施例中,如果该第一用户标识和该验证信息有效,则维护单元1120还用于将该长连接标记为已登录状态。
可选地,作为另一个实施例,当该用户在线状态维护请求为保持心跳请求时,维护单元1110具体用于:根据接收该保持心跳请求的时间,或根据该保持心跳请求携带的时间戳,更新该缓存中该第一用户标识对应的用户的在线状态中的心跳时间。
可选地,作为再一个实施例,当该用户在线状态维护请求为注销请求时,维护单元1110具体用于:根据该注销请求,删除该缓存中该用户标识对应的用户的在线状态数据。
进一步地,如图11所示,该接入层组件还可包括发送单元1130,发送单元1130可向该应用服务层组件发送注销该用户标识对应的用户的请求;维护单元1120还关闭与该客户端之间的长连接。
可选地,如图11所示,该接入层组件还可包括监测单元1140,监测该缓存中各用户在线状态对应的心跳时间;如果监测单元1140监测到当前时间距离该第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则维护单元1120还删除该缓存中该第二用户标识对应的用户的在线状态数据,并关闭该第二用户标识对应的长连接。
可选地,接收单元1110还接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三用户标识;如果该接入层组件的内存中存在该第三用户标识对应的长连接,则发送单元1130还通过该第三用户标识对应的长连接向该第三用户标识对应的客户端发送该下行消息/下行通知;或者,如果该接入层组件的内存中不存在该第三用户标识对应的长连接,则发送单元1130还向该应用服务层组件反馈该第三用户标识对应的用户不在线的应答消息。
可选地,接收单元1110还接收该应用服务层组件发送的用户在线状态查询请求,该用户在线状态查询请求携带第四用户标识,该用户在线状态查询请求用于请求查询该第四用户标识对应的用户的在线状态,该应用服务层组件存储着用户标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第四用户标识对应的长连接,则发送单元1130还向该应用服务层组件反馈该第四用户标识对应的用户在线的应答消息;或者,如果该接入层组件的内存中不存在该第四用户标识对应的长连接,则发送单元1130还向该应用服务层组件反馈该第四用户标识对应的用户不在线的应答消息。
可选地,如图11所示,该接入层组件还包括统计单元1150,接收单元1110还接收该应用服务层组件发送的用户在线状态统计请求,该用户在线状态统计请求用于请求获取该应用中用户的在线状态数据的统计信息;统计单元1150统计该缓存中该应用的用户的在线状态数据;发送单元1130将该在线状态数据反馈给该应用服务层组件。
可选地,接收单元1110还接收该应用服务层组件发送的下线请求,该下线请求携带第五用户标识,该下线请求用于踢该第五用户标识对应的用户下线,该应用服务层组件存储着用户标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第五用户标识对应的长连接,则维护单元1120在该缓存中删除该第五用户标识对应的用户的在线状态数据,且发送单元1130通过该第四用户标识对应的长连接向该第五用户标识对应的客户端发送踢下线通知,维护单元1120还关闭该第四用户标识对应的长连接。
图12是本申请实施例的应用***的结构示意图。如图12所示,该应用***包括应用客户端1210、应用接入层组件1220和应用服务层组件1230,其中,
应用客户端1210,向应用接入层组件1220发送用户在线状态维护请求,其中,该用户在线状态维护请求携带应用的第一用户标识;
应用接入层组件1220,接收该用户在线状态维护请求,并根据该用户在线状态维护请求,维护应用接入层组件1220对应的缓存中该第一用户标识对应的用户的在线状态,其中,该缓存用于存储应用的用户的在线状态。
在本申请实施例中,应用接入层组件根据应用的客户端的用户在线状态维护请求维护用户的在线状态,使得应用***中的用户的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护用户在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
应理解,在本申请实施例中,应用客户端1210还可执行图2-图9所示实施例中客户端执行的方法,应用接入层组件1220还可执行图1-图9所示实施例中接入层组件或API网管执行的方法,应用服务层组件1230还可执行图2-图9所示实施例中应用服务层执行的方法,具体实现可参考图1-图9所示实施例,本申请实施例在此不再赘述。
图13是本申请的一个实施例应用的在线状态维护的方法流程图。图13的方法由应用的接入层组件执行。在本申请实施例中,该接入层组件可以API网关等。图13的方法可包括:
S1302,接入层组件接收客户端发送的该应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识。
应理解,在本申请实施例中,应用的接入层组件已经和应用的客户端建立长连接,或者说,步骤S1302的方法在应用的接入层组件已经和应用的客户端建立长连接之后执行。
S1304,该接入层组件根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
其中,该缓存用于存储应用的在线状态。
应理解,在本申请实施例中,只有API网关才需要维护应用的在线状态信息,该应用的应用服务层组件不维护应用的在线状态信息,也不缓存应用的在线状态信息。
在本申请实施例中,应用的接入层组件根据应用的在线状态维护请求维护应用的在线状态,使得应用***中的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
可选地,作为一个实施例,当该在线状态维护请求为登录请求时,步骤S1302具体实现为:该接入层组件接收该客户端发送的登录请求,该登录请求携带该第一标识和验证信息;
其中,步骤S1304具体实现为:该接入层组件根据该登录请求向该应用服务层组件请求验证该第一标识和该验证信息的有效性;当该第一标识和该验证信息有效时,则该接入层组件在该缓存中存储该第一标识对应的在线状态,其中,该第一标识对应的在线状态为在线。
应理解,在本申请实施例中,该验证信息可以是密码,或者是电子凭证(Credential)串,或者用户的指纹,或者是用户的脸部特征图等等。Credential串,例如,可以是应用***通过向智能手机或邮箱发送的随机字符串等。用户的脸部特征图,例如,支付宝的刷脸登录功能中所采集的用户的脸部特征图。
在本申请实施例中,接入层组件可根据客户端发送的登录请求,在应用服务层进行验证,并在第一标识和验证信息有效后在缓存中存储该登录请求对应的第一标识的在线状态。
进一步地,在本申请实施例中,该方法还包括:如果该登录验证结果为该第一标识和该验证信息有效,该接入层组件将该长连接标记为已登录状态。
可选地,作为另一个实施例,当该在线状态维护请求为保持心跳请求时,步骤S1304具体实现为:该接入层组件根据接收该保持心跳请求的时间,或根据该保持心跳请求携带的时间戳,更新该缓存中该第一标识对应的在线状态中的心跳时间。
在本申请实施例中,通过根据保持心跳请求维护在线状态的心跳时间,从而使得接入层组件能够根据心跳时间确定心跳是否超时,从而确定应用是否在线。
可选地,作为再一个实施例,当该在线状态维护请求为注销请求时,步骤S1304具体实现为:该接入层组件根据该注销请求,删除该缓存中该第一标识对应的在线状态数据。
在本申请实施例中,通过根据注销请求删除缓存中对应的在线状态数据,能够及时响应应用的维护操作,提高在线状态数据的维护效率。
进一步地,在本申请实施例中,该方法还包括:该接入层组件向该应用服务层组件发送注销该第一标识对应的请求,该接入层组件关闭与该客户端之间的长连接。
在本申请实施例中,根据注销请求关闭对应的长连接,从而能够及时释放接入层组件的内存资源。
可选地,作为一个实施例,该方法还可包括:该接入层组件监测该缓存中各在线状态对应的心跳时间;如果当前时间距离该第二标识对应的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除该缓存中该第二标识对应的在线状态数据,并关闭该第二标识对应的长连接。
应理解,心跳周期和心跳时间是用于衡量心跳是否超时的指标。心跳时间通常都在当前时间之前。如果当前时间与心跳时间之间的时间间隔大于心跳周期,则说明心跳超时。
本申请实施例中,通过监测在线状态的心跳时间,并在心跳超时后删除缓存中对应的在线状态,并关闭接入层组件中对应的长连接,从而能够及时维护非正常退出的用户的在线状态数据。
可选地,作为一个实施例,该方法还可包括:
该接入层组件接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三标识;
如果该接入层组件的内存中存在该第三标识对应的长连接,则该接入层组件通过该第三标识对应的长连接向该第三标识对应的客户端发送该下行消息/下行通知。
本申请实施例中,接入层组件通过根据应用服务层组件发送的下行消息/下行通知,判断接入层是否存在对应的应用的长连接,并在存在对应的长连接时通过应用客户端发送下行消息/下行通知,从而能够在应用***中将判断应用是否在线的动作放在接入层组件处理,一定程度上减少了应用服务层的处理资源消耗。
可选地,作为一个实施例,该方法还可包括:
该接入层组件接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三标识;
如果该接入层组件的内存中不存在该第三标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第三标识对应的应用不在线的应答消息。
本申请实施例中,接入层组件通过根据应用服务层组件发送的下行消息/下行通知,判断接入层是否存在对应的应用的长连接,并在不存在对应的长连接时向应用服务层组件反馈用户不在线的应答消息,从而能够在应用***中将判断用户是否在线的动作放在接入层组件处理,一定程度上减少了应用服务层的处理资源消耗。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的在线状态查询请求,该在线状态查询请求携带第四标识,该在线状态查询请求用于请求查询该第四标识对应的在线状态,该应用服务层组件存储着标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第四标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第四标识对应的应用在线的应答消息。
应理解,在本申请实施例中,应用服务层组件可根据接入层组件在用户登录时发送的登录请求,确定标识与接入层组件的对应关系,或者说确定用户与该用户所接入的接入层组件的对应关系。应用服务层组件在发送在线状态查询请求时,可根据标识与接入层组件的对应关系,确定标识对应的接入层组件并发送在线状态查询请求。
或者,可选地,作为另一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的在线状态查询请求,该在线状态查询请求携带第四标识,该在线状态查询请求用于请求查询该第四标识对应的在线状态,该应用服务层组件存储着标识与接入层组件的对应关系;如果该接入层组件的内存中不存在该第四标识对应的长连接,则该接入层组件向该应用服务层组件反馈该第四标识对应的应用不在线的应答消息。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的在线状态统计请求,该在线状态统计请求用于请求获取该应用的用户的在线状态数据的统计信息;该接入层组件统计该缓存中该应用的用户的在线状态数据并反馈给该应用服务层组件。
可选地,作为一个实施例,该方法还可包括:该接入层组件接收该应用服务层组件发送的下线请求,该下线请求携带第五标识,该下线请求用于踢该第五标识对应的应用下线,该应用服务层组件存储着标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第五标识对应的长连接,则在该缓存中删除该第五标识对应的在线状态数据,并通过该第四标识对应的长连接向该第五标识对应的应用发送踢下线通知。可选地,该方法还包括:关闭该第四标识对应的长连接。
应理解,在本申请实施例中,应用服务层组件可根据接入层组件在用户登录时发送的登录请求,确定标识与接入层组件的对应关系,或者说确定应用与该应用所接入的接入层组件的对应关系。应用服务层组件在发送下线请求时,可根据标识与接入层组件的对应关系,确定标识对应的接入层组件并发送下线请求。
本申请实施例的具体实现可参考接入层组件或API网关在图1-9所示实施例的功能,本申请实施例在此不再赘述。
图14是本申请的一个实施例电子设备的结构示意图。请参考图14,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成接入层组件。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
接收客户端发送的应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。
上述如本申请图1-9所示实施例揭示的接入层组件或API网关执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,在本申请实施例中,只有API网关才需要维护应用的在线状态信息,该应用的应用服务层组件不维护应用的在线状态信息,也不缓存应用的在线状态信息。
该电子设备还可执行图1的方法,并实现接入层组件或API网关在图1-9所示实施例的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法。
图15是本申请的一个实施例接入层组件的结构示意图。请参考图15,在一种软件实施方式中,接入层组件可包括:
接收单元1510,接收客户端发送的应用的在线状态维护请求,其中,该在线状态维护请求携带该应用的第一标识;
维护单元1520,根据该在线状态维护请求,维护该接入层组件对应的缓存中该第一标识对应的在线状态。其中,该缓存用于存储应用的在线状态。
本申请实施例中,应用的接入层组件根据应用的客户端的在线状态维护请求维护应用的在线状态,使得应用***中的应用的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
应理解,在本申请实施例中,只有API网关才需要维护应用的在线状态信息,该应用的应用服务层组件不维护应用的在线状态信息,也不缓存应用的在线状态信息。
可选地,作为一个实施例,当该在线状态维护请求为登录请求时,接收单元1510具体用于:接收该客户端发送的登录请求,该登录请求携带该第一标识和验证信息;
其中,维护单元1520具体用于:根据该登录请求向该应用服务层组件请求验证该第一标识和该验证信息的有效性;当该第一标识和该验证信息有效时,在该缓存中存储该第一标识对应的应用的在线状态,其中,该第一标识对应的应用的在线状态为在线。
进一步地,在本实施例中,如果该第一标识和该验证信息有效,则维护单元1520还用于将该长连接标记为已登录状态。
可选地,作为另一个实施例,当该在线状态维护请求为保持心跳请求时,维护单元1510具体用于:根据接收该保持心跳请求的时间,或根据该保持心跳请求携带的时间戳,更新该缓存中该第一标识对应的应用的在线状态中的心跳时间。
可选地,作为再一个实施例,当该在线状态维护请求为注销请求时,维护单元1510具体用于:根据该注销请求,删除该缓存中该第一标识对应的应用的在线状态数据。
进一步地,如图15所示,该接入层组件还可包括发送单元1530,发送单元1530可向该应用服务层组件发送注销该第一标识对应的应用的请求;维护单元1520还关闭与该客户端之间的长连接。
可选地,如图15所示,该接入层组件还可包括监测单元1540,监测该缓存中各在线状态对应的心跳时间;如果监测单元1540监测到当前时间距离该第二标识对应的应用的在线状态所对应的心跳时间的时间间隔大于心跳周期,则维护单元1520还删除该缓存中该第二标识对应的应用的在线状态数据,并关闭该第二标识对应的长连接。
可选地,接收单元1510还接收该应用服务层组件发送的下行消息/下行通知,该下行消息/下行通知携带第三标识;如果该接入层组件的内存中存在该第三标识对应的长连接,则发送单元1530还通过该第三标识对应的长连接向该第三标识对应的客户端发送该下行消息/下行通知;或者,如果该接入层组件的内存中不存在该第三标识对应的长连接,则发送单元1530还向该应用服务层组件反馈该第三标识对应的应用不在线的应答消息。
可选地,接收单元1510还接收该应用服务层组件发送的在线状态查询请求,该在线状态查询请求携带第四标识,该在线状态查询请求用于请求查询该第四标识对应的应用的在线状态,该应用服务层组件存储着标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第四标识对应的长连接,则发送单元1530还向该应用服务层组件反馈该第四标识对应的应用在线的应答消息;或者,如果该接入层组件的内存中不存在该第四标识对应的长连接,则发送单元1530还向该应用服务层组件反馈该第四标识对应的应用不在线的应答消息。
可选地,如图15所示,该接入层组件还包括统计单元1550,接收单元1510还接收该应用服务层组件发送的在线状态统计请求,该在线状态统计请求用于请求获取应用的在线状态数据的统计信息;统计单元1550统计该缓存中应用的在线状态数据;发送单元1530将该在线状态数据反馈给该应用服务层组件。
可选地,接收单元1510还接收该应用服务层组件发送的下线请求,该下线请求携带第五标识,该下线请求用于踢该第五标识对应的应用下线,该应用服务层组件存储着标识与接入层组件的对应关系;如果该接入层组件的内存中存在该第五标识对应的长连接,则维护单元1520在该缓存中删除该第五标识对应的应用的在线状态数据,且发送单元1530通过该第四标识对应的长连接向该第五标识对应的客户端发送踢下线通知,维护单元1520还关闭该第四标识对应的长连接。
图16是本申请实施例的应用***的结构示意图。如图16所示,该应用***包括应用客户端1610、应用接入层组件1620和应用服务层组件1630,其中,
应用客户端1610,向应用接入层组件1620发送在线状态维护请求,其中,该在线状态维护请求携带应用的第一标识;
应用接入层组件1620,接收该在线状态维护请求,并根据该在线状态维护请求,维护应用接入层组件1620对应的缓存中该第一标识对应的应用的在线状态,其中,该缓存用于存储应用的在线状态。
在本申请实施例中,应用接入层组件根据应用的在线状态维护请求维护应用的在线状态,使得应用***中的应用的在线状态维护只需在客户端的下一跳设备即可完成,相比于现有技术维护在线状态的方案减少了所需路由的网络节点,同时也减少了应用服务层的处理资源,从而能够在一定程度上节省应用***的处理资源,提高应用***的处理效率。
应理解,在本申请实施例中,应用客户端1610还可执行图2-图9所示实施例中客户端执行的方法,应用接入层组件1620还可执行图2-图9及图13所示实施例中接入层组件或API网管执行的方法,应用服务层组件1630还可执行图2-图9所示实施例中应用服务层执行的方法,具体实现可参考图2-图9及图13所示实施例,本申请实施例在此不再赘述。
总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
Claims (19)
1.一种应用用户的在线状态维护方法,其特征在于,包括:
应用的接入层组件接收所述应用的客户端发送的所述应用的用户在线状态维护请求,其中,所述用户在线状态维护请求携带所述应用的第一用户标识;
所述接入层组件根据所述用户在线状态维护请求,维护所述接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态,其中,所述缓存用于存储特定用户的在线状态,所述特定用户为访问所述应用的应用服务层组件的用户;
所述接入层组件监测所述缓存中各用户在线状态对应的心跳时间,如果当前时间距离第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二用户标识对应的用户的在线状态数据,并关闭所述第二用户标识对应的长连接。
2.如权利要求1所述的方法,其特征在于,
当所述用户在线状态维护请求为登录请求时,应用的接入层组件接收所述应用的客户端发送的所述应用的用户在线状态维护请求,包括:所述接入层组件接收所述客户端发送的登录请求,所述登录请求携带所述第一用户标识和验证信息;
其中,所述接入层组件根据所述用户在线状态维护请求,维护所述接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态包括:所述接入层组件根据所述登录请求向所述应用服务层组件请求验证所述第一用户标识和所述验证信息的有效性;当所述第一用户标识和所述验证信息有效时,则所述接入层组件在所述缓存中存储所述第一用户标识对应的用户的在线状态,其中,所述第一用户标识对应的用户的在线状态为在线。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述第一用户标识和所述验证信息有效,则所述接入层组件将所述接入层组件与所述客户端之间的长连接标记为已登录状态。
4.如权利要求1所述的方法,其特征在于,
当所述用户在线状态维护请求为保持心跳请求时,所述接入层组件根据所述用户在线状态维护请求,维护所述接入层组件对应的缓存中所述用户的标识对应的用户的在线状态包括:
所述接入层组件根据接收所述保持心跳请求的时间,或根据所述保持心跳请求携带的时间戳,更新所述缓存中所述第一用户标识对应的用户的在线状态中的心跳时间。
5.如权利要求1所述的方法,其特征在于,
当所述用户在线状态维护请求为注销请求时,所述接入层组件根据所述用户在线状态维护请求,维护所述接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态包括:所述接入层组件根据所述注销请求,删除所述缓存中所述第一用户标识对应的用户的在线状态数据。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
所述接入层组件向所述应用服务层组件发送注销所述第一用户标识对应的用户的请求;
所述接入层组件关闭与所述客户端之间的长连接。
7.如权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
所述接入层组件接收所述应用服务层组件发送的下行消息/下行通知,所述下行消息/下行通知携带第三用户标识;
如果所述接入层组件的内存中存在所述第三用户标识对应的长连接,则所述接入层组件通过所述第三用户标识对应的长连接向所述第三用户标识对应的客户端发送所述下行消息/下行通知;或者
如果所述接入层组件的内存中不存在所述第三用户标识对应的长连接,则所述接入层组件向所述应用服务层组件反馈所述第三用户标识对应的用户不在线的应答消息。
8.如权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
所述接入层组件接收所述应用服务层组件发送的用户在线状态查询请求,所述用户在线状态查询请求携带第四用户标识,所述用户在线状态查询请求用于请求查询所述第四用户标识对应的用户的在线状态,所述应用服务层组件存储着用户标识与接入层组件的对应关系;
如果所述接入层组件的内存中存在所述第四用户标识对应的长连接,则所述接入层组件向所述应用服务层组件反馈所述第四用户标识对应的用户在线的应答消息;或者
如果所述接入层组件的内存中不存在所述第四用户标识对应的长连接,则所述接入层组件向所述应用服务层组件反馈所述第四用户标识对应的用户不在线的应答消息。
9.如权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
所述接入层组件接收所述应用服务层组件发送的用户在线状态统计请求,所述用户在线状态统计请求用于请求获取所述应用的用户的在线状态数据的统计信息;
所述接入层组件统计所述缓存中所述应用的用户的在线状态数据并反馈给所述应用服务层组件。
10.如权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
所述接入层组件接收所述应用服务层组件发送的下线请求,其中,所述下线请求携带第五用户标识,所述下线请求用于踢所述第五用户标识对应的用户下线,所述应用服务层组件存储着用户标识与接入层组件的对应关系;
如果所述接入层组件的内存中存在所述第五用户标识对应的长连接,则在所述缓存中删除所述第五用户标识对应的用户的在线状态数据,并通过第四用户标识对应的长连接向所述第五用户标识对应的客户端发送踢下线通知,并关闭所述第四用户标识对应的长连接。
11.一种应用的接入层组件,其特征在于,包括:
接收单元,接收所述应用的客户端发送的所述应用的用户在线状态维护请求,其中,所述用户在线状态维护请求携带所述应用的第一用户标识;
维护单元,根据所述用户在线状态维护请求,维护所述接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态,其中,所述缓存用于存储特定用户的在线状态,所述特定用户为访问所述应用的应用服务层组件的用户;
监测单元,监测所述缓存中各用户在线状态对应的心跳时间;
如果所述监测单元监测到当前时间距离第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则所述维护单元还删除所述缓存中所述第二用户标识对应的用户的在线状态数据,并关闭所述第二用户标识对应的长连接。
12.一种电子设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
接收应用的客户端发送的所述应用的用户在线状态维护请求,其中,所述用户在线状态维护请求携带所述应用的第一用户标识;
根据所述用户在线状态维护请求,维护所述应用的接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态,其中,所述缓存用于存储特定用户的在线状态,所述特定用户为访问所述应用的应用服务层组件的用户;
监测所述缓存中各用户在线状态对应的心跳时间;
如果当前时间距离第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二用户标识对应的用户的在线状态数据,并关闭所述第二用户标识对应的长连接。
13.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
接收应用的客户端发送的所述应用的用户在线状态维护请求,其中,所述用户在线状态维护请求携带所述应用的第一用户标识;
根据所述用户在线状态维护请求,维护所述应用的接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态,其中,所述缓存用于存储特定用户的在线状态,所述特定用户为访问所述应用的应用服务层组件的用户;
监测所述缓存中各用户在线状态对应的心跳时间;
如果当前时间距离第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二用户标识对应的用户的在线状态数据,并关闭所述第二用户标识对应的长连接。
14.一种应用***,包括应用客户端、应用接入层组件和应用服务层组件,其特征在于,
所述应用客户端,向所述应用接入层组件发送用户在线状态维护请求,其中,所述用户在线状态维护请求携带应用的第一用户标识;
所述应用接入层组件,接收所述用户在线状态维护请求,并根据所述用户在线状态维护请求,维护所述应用接入层组件对应的缓存中所述第一用户标识对应的用户的在线状态,其中,所述缓存用于存储特定用户的在线状态,所述特定用户为访问所述应用的应用服务层组件的用户;
所述应用接入层组件,还监测所述缓存中各用户在线状态对应的心跳时间,如果当前时间距离第二用户标识对应的用户的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二用户标识对应的用户的在线状态数据,并关闭所述第二用户标识对应的长连接。
15.一种应用的在线状态维护方法,其特征在于,包括:
接入层组件接收客户端发送的所述应用的在线状态维护请求,其中,所述在线状态维护请求携带所述应用的第一标识;
所述接入层组件根据所述在线状态维护请求,维护所述接入层组件对应的缓存中所述第一标识对应的在线状态;
所述接入层组件监测所述缓存中各在线状态对应的心跳时间,如果当前时间距离第二标识对应的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二标识对应的在线状态数据,并关闭所述第二标识对应的长连接。
16.一种应用的接入层组件,其特征在于,包括:
接收单元,接收客户端发送的所述应用的在线状态维护请求,其中,所述在线状态维护请求携带所述应用的第一标识;
维护单元,根据所述在线状态维护请求,维护所述接入层组件对应的缓存中所述第一标识对应的在线状态;
监测单元,监测所述缓存中各在线状态对应的心跳时间;
如果所述监测单元监测到当前时间距离第二标识对应的应用的在线状态所对应的心跳时间的时间间隔大于心跳周期,则所述维护单元还删除该缓存中所述第二标识对应的应用的在线状态数据,并关闭所述第二标识对应的长连接。
17.一种电子设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
接收客户端发送的应用的在线状态维护请求,其中,所述在线状态维护请求携带所述应用的第一标识;
根据所述在线状态维护请求,维护所述应用的接入层组件对应的缓存中所述第一标识对应的在线状态;
监测所述缓存中各在线状态对应的心跳时间;
如果当前时间距离第二标识对应的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二标识对应的在线状态数据,并关闭所述第二标识对应的长连接。
18.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
接收客户端发送的应用的在线状态维护请求,其中,所述在线状态维护请求携带所述应用的第一标识;
根据所述在线状态维护请求,维护所述应用的接入层组件对应的缓存中所述第一标识对应的在线状态;
监测所述缓存中各在线状态对应的心跳时间;
如果当前时间距离第二标识对应的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二标识对应的在线状态数据,并关闭所述第二标识对应的长连接。
19.一种应用***,包括应用客户端、应用接入层组件和应用服务层组件,其特征在于,
所述应用客户端,向所述应用接入层组件发送应用的在线状态维护请求,其中,所述在线状态维护请求携带所述应用的第一标识;
所述应用接入层组件,接收所述应用客户端发送的所述应用的在线状态维护请求,并根据所述在线状态维护请求,维护所述接入层组件对应的缓存中所述第一标识对应的在线状态;
所述应用接入层组件,还监测所述缓存中各在线状态对应的心跳时间,如果当前时间距离第二标识对应的在线状态所对应的心跳时间的时间间隔大于心跳周期,则删除所述缓存中所述第二标识对应的在线状态数据,并关闭所述第二标识对应的长连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710757797.3A CN109428924B (zh) | 2017-08-29 | 2017-08-29 | 应用的在线状态维护方法、接入层组件、应用***及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710757797.3A CN109428924B (zh) | 2017-08-29 | 2017-08-29 | 应用的在线状态维护方法、接入层组件、应用***及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109428924A CN109428924A (zh) | 2019-03-05 |
CN109428924B true CN109428924B (zh) | 2021-07-13 |
Family
ID=65503624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710757797.3A Active CN109428924B (zh) | 2017-08-29 | 2017-08-29 | 应用的在线状态维护方法、接入层组件、应用***及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109428924B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109977117A (zh) * | 2019-03-18 | 2019-07-05 | 广州虎牙信息科技有限公司 | 状态数据的存储方法、数据发送的方法及装置 |
CN113360783B (zh) * | 2021-06-21 | 2023-03-14 | 上海哔哩哔哩科技有限公司 | 用户在线列表更新方法、装置及计算机设备 |
CN117222043B (zh) * | 2023-09-20 | 2024-07-09 | 广东保伦电子股份有限公司 | 一种基于中间介质的服务器与终端之间的通信方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217512A (zh) * | 2008-01-11 | 2008-07-09 | 腾讯科技(深圳)有限公司 | 客户端状态维护方法、***、客户端及应用服务器 |
CN102395119A (zh) * | 2011-11-15 | 2012-03-28 | 华为技术有限公司 | 一种支持应用客户端永久在线的方法、***及装置 |
CN103001860A (zh) * | 2012-12-20 | 2013-03-27 | 北京思特奇信息技术股份有限公司 | 一种融合通信Web即时消息实现*** |
CN103297470A (zh) * | 2012-02-29 | 2013-09-11 | ***通信集团公司 | 永远在线业务的处理方法、应用服务器、用户终端和*** |
CN103312766A (zh) * | 2011-11-15 | 2013-09-18 | 华为技术有限公司 | 一种支持应用客户端永久在线的方法、***及装置 |
US8670387B2 (en) * | 2006-02-28 | 2014-03-11 | Apple, Inc. | WiMAX R6 control architecture |
CN105721227A (zh) * | 2016-04-14 | 2016-06-29 | 武汉斗鱼网络科技有限公司 | 一种统计用户在线时长的方法与状态服务器及*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571817B (zh) * | 2012-02-15 | 2014-12-10 | 华为技术有限公司 | 访问应用服务器的方法及装置 |
CN103546348A (zh) * | 2013-10-30 | 2014-01-29 | 上海斐讯数据通信技术有限公司 | 一种认证用户异常下线的检测方法 |
CN104579753B (zh) * | 2014-12-15 | 2018-03-23 | 腾讯科技(深圳)有限公司 | 用户数据统计方法、接入层服务器和统计服务器 |
-
2017
- 2017-08-29 CN CN201710757797.3A patent/CN109428924B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8670387B2 (en) * | 2006-02-28 | 2014-03-11 | Apple, Inc. | WiMAX R6 control architecture |
CN101217512A (zh) * | 2008-01-11 | 2008-07-09 | 腾讯科技(深圳)有限公司 | 客户端状态维护方法、***、客户端及应用服务器 |
CN102395119A (zh) * | 2011-11-15 | 2012-03-28 | 华为技术有限公司 | 一种支持应用客户端永久在线的方法、***及装置 |
CN103312766A (zh) * | 2011-11-15 | 2013-09-18 | 华为技术有限公司 | 一种支持应用客户端永久在线的方法、***及装置 |
CN103297470A (zh) * | 2012-02-29 | 2013-09-11 | ***通信集团公司 | 永远在线业务的处理方法、应用服务器、用户终端和*** |
CN103001860A (zh) * | 2012-12-20 | 2013-03-27 | 北京思特奇信息技术股份有限公司 | 一种融合通信Web即时消息实现*** |
CN105721227A (zh) * | 2016-04-14 | 2016-06-29 | 武汉斗鱼网络科技有限公司 | 一种统计用户在线时长的方法与状态服务器及*** |
Also Published As
Publication number | Publication date |
---|---|
CN109428924A (zh) | 2019-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10554655B2 (en) | Method and system for verifying an account operation | |
EP3484125B1 (en) | Method and device for scheduling interface of hybrid cloud | |
CN106101258B (zh) | 一种混合云的接口调用方法、装置及*** | |
US9800573B1 (en) | Authentication on a computing device | |
US20180324170A1 (en) | Method and apparatus for allocating device identifiers | |
CN108632213B (zh) | 设备信息处理方法及装置 | |
CN107483418A (zh) | 登录处理方法、业务处理方法、装置及服务器 | |
CN111031035B (zh) | 一种敏感数据访问行为监控方法及装置 | |
CN108183950B (zh) | 一种网络设备建立连接的方法及装置 | |
US20150142658A1 (en) | Payment binding management method, payment server, client, and system | |
US9589122B2 (en) | Operation processing method and device | |
CN109428924B (zh) | 应用的在线状态维护方法、接入层组件、应用***及设备 | |
CN111756644B (zh) | 热点限流方法、***、设备及存储介质 | |
US10567388B1 (en) | Automatic account resource and policy decommissioning | |
US20210314156A1 (en) | Authentication method, content delivery network cdn, and content server | |
CN110445615B (zh) | 网络请求安全性验证方法、装置、介质及电子设备 | |
US20170070861A1 (en) | Subscriber location database | |
US11816249B2 (en) | System and method for dynamic management of private data | |
KR20170095300A (ko) | 컨텍스트 모바일 데이터 액세스를 위한 기술 | |
CN108259207B (zh) | 流量统计方法、客户端、服务器及*** | |
WO2014152076A1 (en) | Retry and snapshot enabled cross-platform synchronized communication queue | |
CN111294337B (zh) | 一种基于令牌的鉴权方法及装置 | |
CN115694699A (zh) | 时延参数采集方法、装置、电子设备及存储介质 | |
CN117201163A (zh) | 多维度接口鉴权方法、装置、计算机设备和存储介质 | |
CN116723247A (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 |