bboss会话共享架构
bboss session共享特点
作 用:为应用提供统一会话管理功能,避免集群部署场景下负载切换session丢失问题;
跨域跨应用共享会话并实现SSO功能;解决了会话共享五大技术难题:session数据序列 化问题,session sticking问题,跨域跨应用session共享问题,跨容器 (tomcat,jetty,weblogic)共享session问题,sso单点登入单点登出一致性问题。
存 储:采用redis和mongodb存储会话数据,采用增量模式修改会话属性,简单高效
序列化:采用bboss序列化机制以xml格式序列化会话数据,可读性好,易于监控,提供序列化 插件,扩展性强
规 范:遵循servlet 2/3规范,可无缝与现有应用系统集成, 无需或者少量修改 应用代码。Session监听器需遵循bboss会话共享规范,需将原来容器 session监听器迁移到bboss会话共享实现。如修改session中对象数据, 必须调用session.setAttribute方法将对象数据更新到mongodb中,以便将 更新后的数据共享给其他应用。
兼容性:跨容器,兼容业界主流的应用服务器(tomcat,weblogic,webspere,jetty),支持容器 会话管理和bboss会话管理两种机制,可根据实际需要自由切换应用会话管理机制。
约 束:无约束,无需session sticking,客户端请求可以平均分派给各集群节点,支持 lvs,haproxy,ngix 4,7层负载。
安全性:客户端基于cookie机制存储sessionid,通过设置cookie httponly属性阻止XSS窃 取sessionid,通过设置secure属性并结合https阻止传输过程中sessionid被窃取
监 管:session信息统计查询, 应用在线用户数统计查询,应用会话管理功能(包括删除会话、 查看会话属性数据);session统计查询可以
自定义查询会话属性条件。
高 阶
提供两种会话共享模式
模式一 集群间会话共享模式,实现同一个应用集群各节点之间的会话共享 ,通过这种模式可以避免因故障导致访问请求切换服务器时session丢失问题,同时也可以让用户请求无差别地平均分派到各个服务器上,达到真正的负载均衡。
模式二 跨域跨应用模式,实现同一域名或者同一根域(不同的子域名)下不同应用之间的会话共享 ,实现他们之间的单点登录功能(SSO)
第一种模式相对简单;第二种模式在配置方面比模式一稍微复杂一些,通过模式二可以灵活定义哪些会话数据需要在应用之间进行共享,哪些数据作为应用私有会话数据不对其他应用共享(这个在实际情况下很有用),默认情况下共享应用间的所有会话数据。
实际的应用环境中,模式一和模式二经常组合一起使用,每个应用本身采用集群部署模式(开启集群间会话共享模式),同时利用跨域跨应用模式实现不同应用间的单点登录功能(前提是这些应用必须使用同一个域名或者都拥有相同的根域名)。
两种会话共享模式一起使用示意图(前提:应用必须使用同一个域名或者都拥有相同的根域名,根域名不同的话可以使用bboss统一令牌系统实现跨根域系统之间的SSO)
bboss会话对象mongodb存储结构
单应用集群节点之间共享会话存储结构
跨域不同应用之间共享会话存储结构
更多bboss会话共享介绍请访问:
http://yin-bp.iteye.com/category/327553
- 大小: 27.9 KB
- 大小: 50.3 KB
- 大小: 23.6 KB
- 大小: 33.6 KB
- 大小: 46.6 KB
- 大小: 53.1 KB
- 大小: 90.2 KB
- 大小: 123.4 KB
分享到:
相关推荐
集群会话共享,跨容器跨平台,跨站跨应用会话共享及SSO,高效,配置简单,提供实用的会话统计监控和会话集中管理功能(会话查询,会话删除,会话属性数据查看等等)
3. 跨域跨应用session共享问题,是如何处理不同域名或不同应用间会话共享的问题; 4. 跨容器session共享问题,即会话数据在不同应用服务器间如何共享; 5. sso单点登录和单点登出一致性问题,是指确保单点登录和登出...
该项目是一款基于Java和Shell语言的bboss session framework设计源码,专注于实现跨域集群节点之间的会话共享,并具备良好的会话监控和数据统计功能。该框架包含222个文件,包括164个Java源文件、14个XML配置文件、6...
本培训文档将介绍集群session管理的发展历史、bbosssession的架构及特点、性能指标、与应用的集成方式、部署模式以及场景演示等,旨在帮助技术人员理解并掌握bbosssession的使用方法和优势。 一、集群session管理...
本项目是基于JavaScript和CSS开发的bboss会话共享demo,包含421个文件,其中包括114个GIF图像文件、111个JPG图像文件、88个PNG图像文件、29个JavaScript脚本文件、20个CSS样式表文件、18个XML配置文件、12个JSP页面...
BBoss MVCDemo 是一个基于Java的企业级应用框架,它主要为开发者提供了一种高效、灵活的MVC(Model-View-Controller)开发模式。这个框架的目的是简化企业级Web应用的开发流程,提高开发效率,并且具备良好的可扩展...
本实例是一个基于bboss es spring boot starter的demo maven工程,可供spring boot项目集成bboss elasticsearch rest client参考 展示了通过spring boot管理单集群功能和管理多集群功能 单集群测试用例:...
BBoss(全称为bbossgroups)是一个专为企业级J2EE应用设计的开源框架,它为Java开发者提供了一系列强大的工具和服务,以简化Web应用程序的开发过程。该框架旨在提高开发效率,降低维护成本,同时保持高度的灵活性和...
该项目是基于Java语言的bboss开源框架构建的设计源码,包含3075个文件,涵盖2700个Java...本项目基于bboss框架构建了数据采集ETL工具、流批一体化Stream工具、Elasticsearch客户端工具和WebSession共享框架等应用。
springboot集成ElasticsearchBboss调用Elasticsearch的案例分享
**Elasticsearch 开发环境搭建与 BBoss 入门教程** Elasticsearch 是一个高度可扩展的开源全文搜索引擎,设计用于快速提供近实时的搜索和分析能力。BBoss(Business Boss)是基于Elasticsearch的一个强大且灵活的...
7. `bboss-core-5.5.0.jar`:这是BBoss框架的核心库,包含了核心的API和实现,为Elasticsearch的集成提供了基础架构。 8. `cglib-nodep-3.1.jar`:CGLIB是一个代码生成库,常用于Java代理和动态类生成,可能在BBoss...
BBoss安全认证过滤器是Java Web开发中一种用于实现用户身份验证和权限控制的重要组件。在Web应用程序中,过滤器(Filter)是Servlet规范的一部分,它允许开发者在请求到达目标Servlet或JSP之前进行预处理,以及在...
**bboss+es基本操作示例** 在Java开发中,Elasticsearch(ES)作为一种流行的分布式搜索引擎和数据分析工具,常用于大数据处理和实时分析。bboss(Business Basic Operation Support)框架则是针对Elasticsearch...
**bboss-datatran** 是一个由 **bboss** 社区开源的高效数据处理工具,专注于数据采集、数据清洗转换以及数据入库等任务。它实现了流批一体化的数据处理能力,使得用户能够灵活地应对实时和批量的数据处理场景。在...
【bboss-db-elasticsearch-tool-master_java_】是一个Java ORM(对象关系映射)框架,它在功能上超越了MyBatis,提供了对多种数据库的广泛支持,包括MySQL、Oracle、PostgreSQL、SQLServer、DB2、DM以及MongoDB。...
官方版本,亲测可用
Elasticsearch rest client bboss介绍-Elastic2018中国开发者大会演讲稿