• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

    hsession: 使用memcached来实现session共享

    原作者: [db:作者] 来自: 网络 收藏 邀请

    开源软件名称:

    hsession

    开源软件地址:

    https://gitee.com/dengdai68/hsession

    开源软件介绍:

    hsession介绍

    hsession是一个解决j2ee 项目session共享问题的一个小工具,能够让同一个用户请求被转发到多台web服务器时,回话依然有效。

    web.xml配置

    <!-- 此过滤器 放在filter的最上面,否则可能 在此 filter 上面的filter 获取的session  不是从memcache获取的,如果上面的filter 没有用到session则不影响-->  <filter>    <filter-name>sessionFilter</filter-name>    <filter-class>com.hsession.filter.HSessionFilter</filter-class>  </filter>  <filter-mapping>    <filter-name>sessionFilter</filter-name>    <url-pattern>/*</url-pattern>  </filter-mapping>

    cache.properties配置

    #cache类型,可以使用自己写的其他类来实现com.hsession.cache.Cachecache.type=com.hsession.memcached.MemCached#memcached 缓存ip:port ,用,分隔 使用分布式memcache服务器cache.servers=121.43.106.57:11211cache.server.weights=10

    Maven第三方依赖

    <dependency>    <groupId>javax.servlet</groupId>    <artifactId>servlet-api</artifactId>    <version>2.5</version></dependency><dependency>    <groupId>org.slf4j</groupId>    <artifactId>slf4j-api</artifactId>    <version>1.7.7</version></dependency><dependency>    <groupId>com.whalin</groupId>    <artifactId>Memcached-Java-Client</artifactId>    <version>3.0.0</version></dependency>

    但是hsession可能会遇到的问题,需要考虑:

    • 分布式memcached服务器是通过hash算法来分别落到不同的服务器上,如果一台memcached服务器的down机可能造成一批用户的登陆态丢失,需要重新登录。
    • memcached 分块存储,如果优化不好可能会在成大量的内存浪费 或者数据丢失
    • memcached不是一个稳定的数据存储服务器,可能会出现不确定的数据丢失,用户可能会莫名其妙下线,作为优化,可以用数据库作为辅助,或者直接使用redis

    鲜花

    握手

    雷人

    路过

    鸡蛋
    该文章已有0人参与评论

    请发表评论

    全部评论

    专题导读
    热门推荐
    阅读排行榜

    扫描微信二维码

    查看手机版网站

    随时了解更新最新资讯

    139-2527-9053

    在线客服(服务时间 9:00~18:00)

    在线QQ客服
    地址:深圳市南山区西丽大学城创智工业园
    电邮:jeky_zhao#qq.com
    移动电话:139-2527-9053

    Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap