CN102263797B - 一种会话控制的方法及装置 - Google Patents
一种会话控制的方法及装置 Download PDFInfo
- Publication number
- CN102263797B CN102263797B CN201110252721.8A CN201110252721A CN102263797B CN 102263797 B CN102263797 B CN 102263797B CN 201110252721 A CN201110252721 A CN 201110252721A CN 102263797 B CN102263797 B CN 102263797B
- Authority
- CN
- China
- Prior art keywords
- user
- login
- session
- timing
- overtime
- 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
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种会话控制的方法,适用于在同一框架下实现的web系统,当用户关闭主框架时能及时删除该用户的会话,通过此方法可控制最大访问用户数,并可以节省资源。所述方法包括:接收用户发送的登录请求;并验证用户信息成功后,判断所有已登录用户所对应的计时是否已超时;若有超时,则释放所有已超时用户对应的会话;然后,判断该请求登录的用户是否已登录和系统是否已达最大登录用户数;若均否,则登录成功。否则,登录失败。本发明还公开了用于实现所述方法的装置。
Description
技术领域
本发明涉及通信领域,特别是涉及会话控制的方法及装置。
背景技术
随着互联网技术的发展,每天有大量用户登录web(万维)网页来获取信息或发布信息等。用户登录网页时会建立会话(session),通过会话来实现用户与网络的通信传输。用户退出网页时释放会话,以释放相应的资源。
目前web应用中,用户点击网页上的用户退出按钮以退出业务时,系统将释放该用户对应的会话。但是如果用户以关闭网页的方式退出时,系统必须在系统设置的超时时间后才释放该会话,这个时间一般都会很长,该会话会在很长一段时间内占用资源。如果有大量用户和大量业务存在这样的情况,浪费资源的数量将非常可观,并且在负荷较大时将影响其它用户登录业务。且如果需要进行控制最大登录用户数时,则不能实现。
现有的一种解决方案是,如果用户长时间没有发出新的业务请求,则断开该用户的会话。但是用户没有新的业务请求不表示该用户已不应用当前的业务,因此该方案超时释放会话是不合适的。
另一种方式是使用license(监听)模式控制用户登录。但是在用户关闭网页时,license模式无法监听到用户已实际退出业务,也就无法释放会话。
发明内容
本发明实施例提供一种会话控制的方法及装置,用于实现在用户关闭主框架时及时断开该用户的会话,以节省资源,并且有助于进行最大用户数控制。
一种会话控制的方法,包括以下步骤:
接收用户发送的登录请求;
收到登录请求后判断所有已登录用户所对应的计时是否已超时,其中,用户建立会话后,针对用户登录的主框架开始计时,该计时超时时,刷新所述用户的内存信息对应的计时,收到登录成功的用户关闭主框架的命令时,停止对主框架的计时;
若有已登录用户所对应的计时已超时,则释放该用户对应的会话。
一种会话控制的装置,包括:
接口模块,用于接收用户发送的登录请求;
控制模块,用于判断所有已登录用户所对应的计时是否已超时;若有已登录用户所对应的计时已超时,则释放该用户对应的会话,控制模块还用于针对用户登录的主框架开始计时,该计时超时时,刷新所述用户的内存信息对应的计时,收到登录成功的用户关闭主框架的命令时,停止对主框架的计时。
因为现有技术中关闭主框架无法触发会话的释放,因此本发明实施例在用户关闭主框架时停止对用户的内存信息对应的计时,即停止对用户的计时,当有新的用户登录时,释放计时超时用户的会话,从而实现在用户关闭主框架时及时删除该用户的会话,以节省资源,以及有助于进行最大用户数的控制。
附图说明
图1为本发明实施例中会话控制的主要方法流程图;
图2为本发明实施例中带有身份验证的会话控制的方法流程图;
图3为本发明实施例中带有负荷控制的会话控制的方法流程图;
图4为本发明实施例中装置的结构图。
具体实施方式
因为现有技术中关闭主框架无法触发会话的释放,因此本发明实施例在用户关闭主框架时停止对用户的内存信息对应的计时,当计时超时时释放该用户对应的会话,从而实现在用户关闭主框架时及时删除该用户的会话,通过此方法可控制最大访问用户数,并可以节省资源。
参见图1,本实施例中会话控制的主要方法流程如下:
步骤101:接收用户发送的登录请求。
步骤102:收到登录请求后判断所有已登录用户所对应的计时是否已超时。
步骤103:若有已登录用户所对应的计时已超时,则释放该超时用户对应的会话。否则不释放该用户对应的会话。
还可以确定所述请求登录的用户登录成功,并为该用户建立会话。
为了提高登录用户的安全性,可以判断请求登录用户发送的用户名和密码是否正确,以及判断该用户是否已登录;若用户名和密码不正确,或者该用户已登录,则确定请求登录用户登录失败,否则确定请求登录用户登录成功,并为登录用户建立会话。具体过程参见下面的实施例。
参见图2,本实施例中带有身份验证的会话控制的方法流程如下:
步骤201:接收用户发送的登录请求。
步骤202:根据登录请求判断用户发送的用户名和密码是否正确,若正确,则继续步骤203,否则继续步骤207。
步骤203:判断所有已登录用户所对应的计时是否已超时,若有已登录用户所对应的计时超时,则继续步骤204,否则继续步骤205。
步骤204:释放该超时用户对应的会话。继续步骤206。
步骤205:根据用户名判断所述用户是否已登录,若是,则继续步骤207,否则继续步骤206。
步骤206:确定请求登录用户登录成功,并为该用户建立会话。
步骤207:确定请求登录用户登录失败。还可以向用户返回登录失败的原因。
为了防止负荷过大,还需要控制登录用户的数量,所以在用户登录时,判断是否已达到预设的最大用户数,若是,则确定所述用户登录失败,否则确定所述用户登录成功,并为用户建立会话。具体过程参见下面的实施例。
参见图3,本实施例中带有负荷控制的会话控制的方法流程如下:
步骤301:接收用户发送的登录请求。
步骤302:根据登录请求判断用户发送的用户名和密码是否正确,若正确,则继续步骤303,否则继续步骤307。
步骤303:判断所有已登录用户所对应的计时是否已超时,若有已登录用户所对应的计时超时,释放该超时用户的会话。继续步骤304。
步骤304:根据用户名判断所述用户是否已登录,若是,则继续步骤307,否则继续步骤305。
步骤305:判断是否已达到预设的最大用户数,若是,则继续步骤307,否则继续步骤306。
步骤306:确定请求登录用户登录成功,并为该登录用户建立会话。
步骤307:确定请求登录用户登录失败。还可以向用户返回登录失败的原因。
用户登录成功后,将该用户的会话和用户名对应起来保存到内存中。
本实施例使用Spring security框架实现,Spring security为基于J2EE(Java2Platform,Enterprise Edition,Java2平台企业版,Java为一种编程语言)企业应用软件提供了全面安全服务框架。对Spring security框架中的AuthenticationProcessingFilter(授权过滤)类进行扩展,该类是用来处理form登陆的过滤器,与form(表单)登陆有关的所有操作都是在此进行。本实施例在AuthenticationProcessingFilter类中实现了用户名和密码的验证,用户是否已登录的判断,是否有关闭主框架超时的判断,在超时时释放相应的会话,以及是否已达到最大用户数的判断。
为用户建立会话后,针对用户登录的主框架开始计时,即启动计时器,该计时超时时,刷新所述用户对应的内存信息,即刷新用户的内存信息对应时间,并令计时器重新开始计时。本实施例通过刷新所述用户对应的时间信息来保证用户处于活跃态,以免用户长时间未发送新的请求而被中断业务,释放会话。
本实施例中会话的监控过程的实例如下:
Servlet类是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。此处Servlet类中,定时将当前时间更新到该登录用户的UserBean中。
以上描述了会话控制的实现过程,该过程可由装置实现,下面对该装置的内部结构和功能进行介绍。
参见图4,本实施例中会话控制的装置包括:接口模块401和控制模块402。该装置可具体为计算机设备等。
接口模块401用于接收用户发送的登录请求。
控制模块402用于判断所有已登录用户所对应的计时是否已超时;若有已登录用户所对应的计时已超时,则释放该用户对应的会话。
控制模块402还用于确定请求登录用户登录成功,并为登录用户建立会话。较佳的,控制模块402还用于判断请求登录用户发送的用户名和密码是否正确,以及判断该用户是否已登录;若用户名和密码不正确,或者该用户已登录,则确定请求登录用户登录失败,否则确定请求登录用户登录成功,并为该用户建立会话。和/或,控制模块402还用于判断是否已达到预设的最大用户数,若是,则确定请求登录用户登录失败,否则确定请求登录用户登录成功,并为该用户建立会话。
进一步的,控制模块402还用于针对用户登录的主框架开始计时,该计时超时时,刷新所述用户的内存信息对应的计时。
因为现有技术中关闭主框架无法触发会话的释放,因此本发明实施例在用户关闭主框架时停止对用户的内存信息对应的计时,当计时超时时释放该用户对应的会话,从而实现在用户关闭主框架时及时删除该用户的会话,以节省资源,并且有助于其他用户的顺利登录,以及有助于最大用户数控制。本发明实施例还通过用户验证,是否登录验证和是否过载验证等手段控制用户的登录和会话建立,以提高安全性和防止过载。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种会话控制的方法,其特征在于,包括以下步骤:
接收用户发送的登录请求;
收到登录请求后判断所有已登录用户所对应的用户的内存信息对应的计时是否已超时,其中,用户建立会话后,针对用户登录的主框架开始计时,该计时超时时,刷新所述用户的内存信息对应的计时,收到登录成功的用户关闭主框架的命令时,停止对主框架的计时;
若有已登录用户所对应的用户的内存信息对应的计时已超时,则释放该用户对应的会话。
2.如权利要求1所述的方法,其特征在于,还包括步骤:确定请求登录用户登录成功,并为登录用户建立会话。
3.如权利要求1所述的方法,其特征在于,接收用户发送的登录请求后,还包括步骤:判断请求登录用户发送的用户名和密码是否正确,以及判断该用户是否已登录;若用户名和密码不正确,或者该用户已登录,则确定该用户登录失败,否则确定该用户登录成功,并为该用户建立会话。
4.如权利要求1所述的方法,其特征在于,释放该用户对应的会话后,还包括步骤:判断是否已达到预设的最大用户数,若是,则确定请求登录用户登录失败,否则确定该用户登录成功,并为该用户建立会话。
5.一种会话控制的装置,其特征在于,包括:
接口模块,用于接收用户发送的登录请求;
控制模块,用于判断所有已登录用户所对应的用户的内存信息对应的计时是否已超时;若有已登录用户所对应的用户的内存信息对应的计时已超时,则释放该用户对应的会话,控制模块还用于针对用户登录的主框架开始计时,该计时超时时,刷新所述用户的内存信息对应的计时,收到登录成功的用户关闭主框架的命令时,停止对主框架的计时。
6.如权利要求5所述的装置,其特征在于,控制模块还用于确定请求登录用户登录成功,并为登录用户建立会话。
7.如权利要求5所述的装置,其特征在于,控制模块还用于判断请求登录用户发送的用户名和密码是否正确,以及判断该用户是否已登录;若用户名和密码不正确,或者该用户已登录,则确定该用户登录失败,否则确定该用户登录成功,并为登录用户建立会话。
8.如权利要求5所述的装置,其特征在于,控制模块还用于判断是否已达到预设的最大用户数,若是,则确定请求登录用户登录失败,否则确定该用户登录成功,并为登录用户建立会话。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110252721.8A CN102263797B (zh) | 2011-08-30 | 2011-08-30 | 一种会话控制的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110252721.8A CN102263797B (zh) | 2011-08-30 | 2011-08-30 | 一种会话控制的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102263797A CN102263797A (zh) | 2011-11-30 |
CN102263797B true CN102263797B (zh) | 2014-09-10 |
Family
ID=45010251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110252721.8A Active CN102263797B (zh) | 2011-08-30 | 2011-08-30 | 一种会话控制的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102263797B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9736244B2 (en) * | 2012-10-10 | 2017-08-15 | Nokia Solutions And Networks Oy | Peer revival detection |
CN103812940A (zh) * | 2014-02-19 | 2014-05-21 | 浪潮软件股份有限公司 | 集群会话的集中式管理方法 |
CN110650122B (zh) * | 2019-09-04 | 2021-12-17 | 苏州浪潮智能科技有限公司 | 一种Web系统自动登出方法、装置及系统 |
CN111163083A (zh) * | 2019-12-27 | 2020-05-15 | 杭州数梦工场科技有限公司 | 基于应用粒度的登录会话控制方法、装置及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863061A (zh) * | 2005-09-28 | 2006-11-15 | 华为技术有限公司 | 移动终端在联网游戏中断时自动恢复的方法及其系统 |
CN1949774A (zh) * | 2006-11-02 | 2007-04-18 | 华为技术有限公司 | 一种Web应用程序会话管理方法与装置 |
CN101030964A (zh) * | 2006-03-03 | 2007-09-05 | 华为技术有限公司 | 会话控制装置和方法 |
CN101742614A (zh) * | 2008-11-27 | 2010-06-16 | 华为技术有限公司 | 一种控制用户接入的方法和网络设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100438404C (zh) * | 2004-10-25 | 2008-11-26 | 英业达股份有限公司 | 一种网页浏览计时系统及其计时方法 |
US8213295B2 (en) * | 2006-09-12 | 2012-07-03 | Qualcomm Incorporated | Transaction timeout handling in communication session management |
CN101536464B (zh) * | 2006-11-10 | 2012-09-05 | 艾利森电话股份有限公司 | 用于控制通信的方法及设备 |
-
2011
- 2011-08-30 CN CN201110252721.8A patent/CN102263797B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863061A (zh) * | 2005-09-28 | 2006-11-15 | 华为技术有限公司 | 移动终端在联网游戏中断时自动恢复的方法及其系统 |
CN101030964A (zh) * | 2006-03-03 | 2007-09-05 | 华为技术有限公司 | 会话控制装置和方法 |
CN1949774A (zh) * | 2006-11-02 | 2007-04-18 | 华为技术有限公司 | 一种Web应用程序会话管理方法与装置 |
CN101742614A (zh) * | 2008-11-27 | 2010-06-16 | 华为技术有限公司 | 一种控制用户接入的方法和网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102263797A (zh) | 2011-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2018220050B2 (en) | Enforcing policies based on information received from external systems | |
CN105095746B (zh) | 应用程序启动鉴权方法及装置 | |
US20200389355A1 (en) | Secure configuration of cloud computing nodes | |
CN102204304B (zh) | 对接入点中的多个预先共享的密钥的支持 | |
JP5584354B2 (ja) | ネットワークにアクセスするためのマシン型通信装置を制御する方法及びシステム | |
US9740883B2 (en) | System and method for enabling control of mobile device functional components | |
US8755797B2 (en) | Methods and apparatus for controlling provisioning of a wireless communication device | |
US20170141932A1 (en) | Internet Access Traffic Sharing Method, Device and Terminal | |
CN109309666A (zh) | 一种网络安全中的接口安全控制方法及终端设备 | |
US9288670B2 (en) | Dynamic distribution of authentication sessions | |
US20120278456A1 (en) | Method and apparatus for data configuration | |
CN102263797B (zh) | 一种会话控制的方法及装置 | |
CN105100094B (zh) | 一种解锁控制方法及终端 | |
US11294776B2 (en) | Systems and methods for remote-initiated device backup | |
EP3209005B1 (en) | Task processing device, intelligent apparatus, task processing method and baseband processor | |
CN103139182A (zh) | 一种允许用户访问的方法、客户端、服务器以及系统 | |
CN112968892B (zh) | 信息的验证方法、装置、计算设备和介质 | |
CN103152351A (zh) | 网络设备、ad 域单点登录的方法及系统 | |
CN103810419B (zh) | 一种应用防卸载方法和设备 | |
CN107872492B (zh) | 一种在服务端支持多用户编辑数据对象的方法和装置 | |
CN107566396A (zh) | 一种基于动态口令增强服务器vpn协议安全的方法 | |
WO2012068840A1 (zh) | 客户端/服务端架构下的调度方法和服务器 | |
CN103476025A (zh) | 进程管理方法及系统、移动终端 | |
CN112560006A (zh) | 一种多应用系统下的单点登录方法和系统 | |
CN101232379B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |