论坛首页 综合技术论坛

oscache集群环境下的数据同步问题

浏览 3210 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
作者 正文
   发表时间:2009-01-22   最后修改:2009-01-22
在我们的web应用中,大家可能经常会用到oscache来缓存数据。但是当你的应用服务器是集群环境的情况下,通常会有数据不同步的问题。为了解决这样的问题,可以利用IP组播实现集群环境下的节点间缓存数据的同步。 经过在2台PC机上分别启动tomcat,运行库存web应用,调用被缓存的方法,然后在其中一台更改缓存的结果,经测试,另一台的缓存被同步更新了。 这为集群环境下,各节点的同步提供了新的解决途径。 OSCache缓存组件提供了在集群下进行同步的支持。 只要在oscache.properties文件里添加如下内容就可以了,其中mcast_addr=231.12.21.132的值可以改变,其取值范围根据IP地址的规则(为某些应用预留了特殊的IP地址)来定。 cache.event.listeners=com.opensymphony.oscache.plugins.clustersupport.JavaGroupsBroadcastingListener UDP(mcast_addr=231.12.21.132;mcast_port=45566;ip_ttl=32;\ mcast_send_buf_size=150000;mcast_recv_buf_size=80000):\ PING(timeout=2000;num_initial_members=3):\ MERGE2(min_interval=5000;max_interval=10000):\ FD_SOCK:VERIFY_SUSPECT(timeout=1500):\ pbcast.NAKACK(gc_lag=50;retransmit_timeout=300,600,1200,2400,4800;max_xmit_size=8192):\ UNICAST(timeout=300,600,1200,2400):\ pbcast.STABLE(desired_avg_gossip=20000):\ FRAG(frag_size=8096;down_thread=false;up_thread=false):\ pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;shun=false;print_local_addr=true) 在配置的过程中主要用到到的JAR包: oscache-2.4.1.jar 缓存组件 jgroups-all.jar 基予JGroup的IP组播 commons-logging.jar 日志包 concurrent.jar 处理线程读写同步
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics