关闭

集群缓存同步

787人阅读 评论(0) 收藏 举报

概念:

 

集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。总的来说,集群包括两个概念:负载均衡(load balancing)和失败接管(failover)。

 

负载均衡:多个客户端同时发出请求,位于前端的负载均衡器根据特定算法,将请求分担给比较空闲的机器,从而实现较高性能和较好的扩展性。

 

失败接管:当客户端连续向某个服务器发出请求时,该服务器可能处理到一半就宕机了,失败接管系统能够检测出有问题的服务器,将后续的请求转发至其他可用的机器,从而实现容错功能。

 

缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。

 

问题:

 

当一个应用部署在集群环境下的不同节点上并行运行时,每个服务器节点都是单独缓存。这样就很容易导致不同节点的缓存内容出现版本上的不一致。一台机器上修改了数据只会影响到本地的内存,但不会通知其他服务器,导致其他节点的缓存数据实际已经失效了。这样就必须实现在集群环境下保持缓存同步。

 




实现步骤:

 

1、在reportConfig.xml文件中做如下配置:

配置缓存机器和缓存端口号–>

clusterMember

B,192.168.0.59,8087;C,192.168.0.48,8087;

 

配置是否共享缓存目录–>

isCachedFileShared

yes

 

配置缓存共享目录–>

cachedReportDir

\\192.168.0.59\cached

 

 

参数说明:clusterMember属性,它指定了系统缓存前缀、所有集群的服务器结点及每个服务器结点与缓存服务器间的通讯接口。

它的格式是:缓存前缀,IP,端口;(注:润乾通信端口非web服务器端口)

 

2、重起服务器,即可实现集群时缓存同步。


ps:不添加缓存同步理论上也算是集群,只是报表展现速度快的优势没有展现出来

集群方式分为,两个应用的集群和两台物理机的集群,方式不同配置文件配置也不同

不同服务器的集群也是可以集群的,比如was和weblogic的集群是由那个apache的服务器决定的,如果,只要那个apache服务器能这样搞,也应该是可以的

这个8087
比如,tomcat启动,它本身,就需要占用一些端口的
比如 
8080,8083,这些
就是这个8087,是要没有被其他使用过的,是单独要给润乾使用的
就是一个机子,是有很多端口的,哪些放开了,可以使用,哪些是没有放开的。就是在放开的那些端口里面,找一个,还没有被其他占用的端口,给润乾

 

润乾报表的缓存是在硬盘上做的,客户端第一次访问报表服务器,B机器计算了报表并在B机器作了缓存,当客户端第二次访问时,例如此时跳转到C机器,C机器根据缓存id判断出是B机器做的缓存,于是C机器向B机器发送缓存请求,B机器读取缓存并把缓存结果发送给C机器,C机器再把结果返回给客户端。

0
0
查看评论

缓存-ehcache 集群缓存的同步

hoojo 学习在于积累:滴水可以石穿!学而不思则罔,思而不学则殆! 博客园   首页   博问   闪存   新随笔   联系   订阅  管理 随笔-153  评论-...
  • xcw931924821
  • xcw931924821
  • 2016-08-27 16:21
  • 3566

集群环境下的缓存同步和出错恢复

  概念:集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。集群技术是一种通用的技术,其目的是为了解决单机运算能力的不足、IO能力的不足、提高服务的...
  • peterwanghao
  • peterwanghao
  • 2006-08-10 17:44
  • 4141

缓存-为什么需要使用分布式缓存

转载:http://in.relation.to/Bloggers/StrongLiu 为什么需要使用分布式缓存(数据网格)呢? 本文旨在回到这个问题. 首先, 它是进化的产物. 本地缓存 > 集群缓存 > 分布式缓存(数据网格) 使用分布式缓存的原因中包括了为什么使用缓存集群, 而使...
  • xcw931924821
  • xcw931924821
  • 2016-08-27 15:45
  • 6904

集群环境中使用 EhCache 缓存系统

本章节将要介绍EhCache及EhCache实现分布式的一些解决方案、并针对于这些解决性方案做一个实现,后续将出一个提供项目模块化、服务化、插件化的VieMall快速开发平台,同时集成Dubbo服务化、Zookeeper(分布式调度/分布式配置管理服务)、Redis分布式缓存技术及Memcache/...
  • tang06211015
  • tang06211015
  • 2016-08-22 23:58
  • 10679

缓存同步机制整理

缓存同步机制整理 同步目的 使数据库数据和缓存中的数据在一定时间内保持一致 缓存形式 内存文件(磁盘) 缓存更新的常用模式 预留缓存Cache-aside 访问数据库之前先检查缓存中是否有缓存,如果没有在数据库更新后更新缓存。 直读模式 Read-through 应用先...
  • ITX2000
  • ITX2000
  • 2017-02-17 12:02
  • 2417

如何在WebLogic 8.1上使用EhCache分布式缓存

如何在WebLogic 8.1上使用EhCache分布式缓存在WebLogic8.1上部署EhCache分布式缓存时,会抛出异常java.lang.ClassNotFoundException: net.sf.ehcache.distribution.RMICachePeer_Stub(no sec...
  • zhouxianli
  • zhouxianli
  • 2008-06-02 17:25
  • 3535

分布式缓存集群的伸缩性设计

分布式缓存集群伸缩性设计的最主要目标:新加入缓存服务器后应使整个缓存服务器集群中已经缓存的数据尽可能还被访问到。   应用程序通过Memcached客户端访问Memcached服务器集群,Memcached客户端主要由一组API、Memcached服务器集群路由算法、Memcached服...
  • Joe520Kay
  • Joe520Kay
  • 2016-12-12 17:54
  • 616

集群时的缓存同步

         随着对服务器集群的负载均衡能力要求越来越高,很多服务器推出了session同步的功能。即 同一个客户端在同一个访问周期里,可能第一次访问A机器,第二次跳转到B机器访问,此时在访问A机器过程中产生的sessi...
  • chaochao52001
  • chaochao52001
  • 2016-12-12 17:01
  • 245

润乾升级部署集群缓存同步注意事项

问题背景: 最近在给某客户进行系统升级至企业版部署集群缓存同步时,遇到了一些概念性的问题,比如润乾的集群缓存同步的实现机制、原理如何?下面就会对顺着该问题进行一些说明解释,方便后续部署润乾报表的集群缓存同步做一个参考。 问题说明: 部署一个润乾报表的集群缓存同步功能,首先我们可以根据《润乾报表...
  • Alice_656
  • Alice_656
  • 2016-11-22 11:34
  • 309

润乾报表集群缓存同步功能介绍

 目前服务器的集群,大多是使用session同步的方法解决的问题,即让集群中一台电脑的session在集群服务器发生相互之间跳转的时候,把session也同时复制到相应的电脑上。例如:在集群服务器中,第一次访问A机器,第二次跳转到B机器继续访问,服务器会自动把A机器产生的session的内容复...
  • RQlyc
  • RQlyc
  • 2016-12-01 11:03
  • 456
    个人资料
    • 访问:101765次
    • 积分:1895
    • 等级:
    • 排名:千里之外
    • 原创:65篇
    • 转载:151篇
    • 译文:0篇
    • 评论:4条
    最新评论