您的位置:首页 > 数据库

CAS 服务器在WAS V7中集群将票据保存到数据库

2016-07-08 00:00 239 查看
CAS服务端在集群环境下,需要将票据保存到一个地方,这个时候就需要分布式缓存了,在tomcat下使用jpa2.0将数据保存到

数据库。当将应用发布到WAS7.0的时候,发现居然不支持JPA2.0,要装一个功能包,到ibm去看了一下,居然不提供传统的升级包,下载的是一个zip,需要IBM installmanager.再去下载,唉,不给国内下。得~,,换个方式吧,后来看到WAS里面有一个叫做高速缓存的东西,,看了一下API,比较好用,通过jndi取得实例然后就可以当MAP使用了。马上动手修改票据保存实现。搞定之后发现复制域并没有实现分布缓存,,折腾。。。。折腾不出来,我在其他项目中使用了mamcached作为缓存服务器的,又在linux下搭建memcached服务器。增加缓存实现、测试。比较顺利。后来客户不给用memcached,只要自己研究JDBC方式将票据保存到数据库了。

在CAS-clinet中有两个map保存session和票据的关系数据。当客户端在集群环境下的时候,这个也是一个问题。使用memcached,发现Tomcat不支持session序列化,另外Tomcat可以在管理中序列化,然后得到session。

后来我又换成ehcache+tc。tc需要配置ods才能支持pojo非序列化东西。was的session是可以序列化的,但是居然没有默认构造函数。

继续折腾中。。

后来想到通过修改CAS-client客户端,支持在CAS-client集群环境下,当一个节点收到消息后,广播到其他节点。通过这种方式来将集群中的所有节点都登出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: