一个 Web 系统,通常都有在线人数统计的需求。 按照常规思路应该是首先声明 HttpSessionListener
然后分别在 sessionCreated、sessionDestroyed 回调方法里面做在线人数的加减法。 有过类似经历
的同学想必都知道,sessionCreated 回调的触发,并不是通常以为的用户客户端首次连接后发生的,而
是在首次真正的 session 存取操作时才真正被触发,比如:
HttpSession session = request.getSession();
首次 session 存取操作时,才真正创建 session 实例,从而触发 sessionCreated 的监听回调。
我现在的系统,学习了 SNA 的做法,完全抛弃了 session 的概念。 客户端只通过 cookie 记录用户Id
之类的标识信息,用户登录后,服务端通过 cookie userId 再向 cache module 拿取用户的详细信息。
这样做的目的跟 SNA 的设计目标一致,是为了以后的水平扩展。
现在面临的问题是,为了统计在线人数,我不得不在某一个全局缺省的 interceptor 里面读取 session,
以触发 session 实例的创建,从而触发 sessionCreated 的监听回调。 本来系统已经实现了 SNA,完全
不再需要 session了, 现在又不得不为此创建一堆无用的 session 实例。 就算现在暂时容忍了这一点,
以后做节点水平扩展的时候,还得面临节点间的在线人数广播通知的问题。。。
用 cookie 来解决这个问题,也不是非常的方便。 因为匿名连接,是要计入在线的。 但是初次访问的用户,
并没有 userId 之类的 cookie 信息,服务端为了区分不同的匿名个体,还需要给客户端 cookie 回写一
些唯一匿名标识。 总之是很繁琐。
不知道大家在处理类似 SNA 的结构方式时,怎么处理这样的问题。
分享到:
相关推荐
- **协议兼容性**:SNA的设计考虑了与OSI参考模型的兼容性,这使得SNA能够与OSI标准下的其他网络协议进行有效的交互。 #### 六、总结 IBM Systems Network Architecture (SNA) 是一种历史悠久且功能强大的企业级...
sna session实现方案实例,稍微修改下即可用于产品
- **强大的分析能力**:SNA 能够对 ZigBee 和 802.15.4 标准下的网络进行全面深入的分析。 - **卓越的配置与管理功能**:该工具不仅支持高效的网络配置,还能实现远程升级等高级管理操作。 ##### 3. 加速解决方案的...
《SNA核算体系的理论基础透析》这篇文章探讨的核心议题是SNA(System of National Accounts,国民账户体系)核算体系的理论基础,特别是在中国引入这一体系后,对马克思主义政治经济学及其劳动价值论的影响。...
在网络游戏领域,SNA(System Network Architecture,系统网络架构)是一种传统的网络通信协议集,主要用于IBM大型机系统。然而,随着技术的发展,SNA的概念也被借鉴到其他领域,包括网络游戏中的数据传输。本文将...
在IT行业中,SNA(System Network Architecture,系统网络架构)是一种由IBM公司开发的网络通信模型,主要用于大型企业或组织的内部网络通信。SNA提供了多种服务,包括数据传输、网络控制以及资源管理等,使得不同...
"SNA PD 確認程序" 是针对IBM System Network Architecture(SNA)状态查询的一种工具或过程,旨在帮助用户监控和理解SNA网络中的系统状态。SNA是IBM开发的一种网络通信协议,广泛用于大型机环境,提供了一种在不同...
- **System Network Architecture (SNA):** SNA是IBM开发的一种网络架构,用于在大型机和其他计算机之间建立连接。它提供了一种灵活且高效的方式来管理不同类型的网络资源。 - **LU (Logical Unit):** LU是在SNA网络...
sna集中式session管理实现服务器集群及客户端程序,以“单点登陆、session共享解决方案(2)”为基础建立的服务器机群应用,运行server.bat启动服务器端,将client包导入web工程,通过Client.sessionPut()等方法调用。...
总的来说,“cas-center加sna.rar”文件中的内容涉及了SSO技术的高级应用,特别是对于拥有复杂网络架构的企业来说,如何有效地结合CAS-Center和SNA以提升用户认证体验和网络安全。通过深入学习这些知识点,开发者和...
资源分类:Python库 所属语言:Python 资源全名:sna_prediction-1.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
国民账户体系(System of National Accounts,简称SNA)是全球经济统计的核心框架,它提供了一套统一的方法来衡量一个国家或经济体的经济活动。这一体系对于政策制定者、经济学家以及研究者来说至关重要,因为它提供...
c7200-adventerprisek9_sna-mz.150-1.M.bin
【SNA新闻采集系统v1.0.2 For 动易4.03】是一款专为动易4.03版本设计的新闻自动化采集工具,旨在帮助用户高效、快速地从互联网上抓取并整合新闻资源。这款系统的核心功能包括新闻源识别、内容筛选、自动发布等多个...
在实际使用中,开发者或用户需要先解压`sna-0.0.9.tar.gz`,然后通过Python的`setup.py`文件安装库,例如,使用`pip install .`命令(在库的根目录下)。安装完成后,便可以在项目中导入`sna`库,开始进行社会网络...
sna lecture notes , erdos reyni
3. 统计软件ROSTCM与词频统计:文章使用ROSTCM这一统计软件对收集到的文章关键词进行词频统计,以识别出现频率较高的关键词,这些关键词反映了经济仿真领域的热点研究对象。 4. 共现矩阵与社会网络分析软件Ucinet:...