知识大全 Java程序性能优化-负载均衡(1)

Posted

篇首语:不怕学问浅,就怕志气短。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java程序性能优化-负载均衡(1)相关的知识,希望对你有一定的参考价值。

Java程序性能优化-负载均衡(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

     负载均衡( )

  对大型应用来说 系统负载可能非常重 以网站应用为例 如果并发数很多 则单台计算机就无法承受 此时 为保证应用程序的服务质量 需要使用多台计算机协同工作 将系统负载尽可能均匀地分配到各个计算机节点上

  一个典型的实现便是Tomcat集群 配置Tomcat集群实现负载均衡 可以通过Apache服务器实现 即 使用Apache服务器作为负载分配器 将请求转向各个Tomcat服务器 从而实现负载均衡 如图 所示 客户端请求被均匀地分配到各个Tomcat节点上

  图   基于Apache的负载均衡结构

  在使用Tomcat集群时 有两种基本的Session共享模式 黏性Session模式和复制Session模式

  在黏性Session模式下 所有的Session信息被平均分配到各个Tomcat节点上 以实现负载均衡 但是一旦一个节点宕机 它所维护的Session信息将丢失 不具备高可用性 且同一用户只能与一台Tomcat交互 因为其他Tomcat节点上不保存这个用户信息

  而使用复制Session模式 将使得所有Session在所有Tomcat节点上保持一致 当一个节点上的Session信息被修改 这个Session会被广播到其他Tomcat节点上 以保持Session同步 这样 当用户的下一次请求被分配到其他Tomcat节点上时 将拥有足够信息处理用户请求 这样做的坏处是 很容易引起网络繁忙 影响系统效率

  在Java开源软件中 还有一款跨JVM虚拟机 专门用于分布式缓存的框架 Terracotta 使用Terracotta也可以实现Tomcat的Session共享 同时Terracotta也是一个成熟的高可用性系统解决方案

  由于Terracotta进行内存共享时 并不会进行全复制 而仅仅传输变化的部分 网络负载也相对较低 因此 使用Terracotta进行Tomcat的Session共享 其效率也远远高于普通的Session复制 除了与Tomcat集成 Terracotta还可以与一些主流Java组件集成使用 如Jetty Spring和EHCache Terracotta的工作架构如图 所示

  图   Terracotta工作架构

  使用Terracotta 可以在多个Java应用服务器间共享缓存 并且在增加应用服务器时 不会像Tomcat那样引起网络风暴 系统负载可以线性增长 是一种可靠的负载均衡方案

  注意 Terracotta是一款企业级的 开源的 JVM层的集群解决方案 它可以实现诸如分布式对象共享 分布式缓存 分布式Session等功能 可以作为负载均衡 高可用性的解决方案

  读者可以在Terracotta官方网站//terracotta /下载并试用Terracotta 在Terracotta安装完成后 可以参考Terracotta自带的几个实例 深入对Terracotta的了解 在此 笔者简单介绍两个有代表性的Terracotta应用案例

  首先 笔者将介绍分布式Cache的使用 在Terracotta中 EhCache得到了加强 具备了分布式功能 在Terracotta安装目录的 ehcache\\samples\\colorcache 子文件夹中 有名为colorcache的分布式EhCache应用示例 该示例由用户指定某一种颜色的名称 由后台生成这种颜色 生成颜色的初始化时间会比较长 但一旦生成后 这种颜色便会进入缓存 以后再获取相同的颜色时 就能很快得到响应

       返回目录 Java程序性能优化 让你的Java程序更快 更稳定

  编辑推荐

       Java程序设计培训视频教程

       J EE高级框架实战培训视频教程

       J ME移动开发实战教学视频

  Visual C++音频/视频技术开发与实战

  Oracle索引技术

cha138/Article/program/Java/gj/201311/27792

相关参考

知识大全 Java程序性能优化-负载均衡(3)

Java程序性能优化-负载均衡(3)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化-负载均衡(4)

Java程序性能优化-负载均衡(4)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化(1)

Java程序性能优化(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一避免在循环条件中使用

知识大全 Java程序性能优化-代理模式(1)

Java程序性能优化-代理模式(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化-缓冲(Buffer)(1)

Java程序性能优化-缓冲(Buffer)(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 Java程序性能优化-缓存(Cache)(1)

Java程序性能优化-缓存(Cache)(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &

知识大全 Java程序性能优化-空间换时间[1]

Java程序性能优化-空间换时间[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化-享元模式(1)

Java程序性能优化-享元模式(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化-单例模式(1)

Java程序性能优化-单例模式(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   

知识大全 Java程序性能优化-装饰者模式(1)

Java程序性能优化-装饰者模式(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!