你是否正在寻找关于集群技术的内容?让我把最完整的东西奉献给你:
一个集群系统是一群松散结合的服务器组,形成一个虚拟的服务器,为客户端用户提供统一的服务。对于这个客户端来说,通常在访问集群系统时不会意识到它的服务是由具体的哪一台服务器提供。
集群的目的,是为实现负载均衡(Load Balancing)、容错(Fault Tolerance)和灾难恢复(Failover)。以达到系统可用性(High Availability)和可伸缩性(Scalability)的要求。
集群系统一般应具高可用性、可伸缩性、负载均衡、故障恢复和可维护性等特殊性能。
越来越多的关键任务和大型应用正运行在J2EE平台上,象银行之类的应用要求很高的可用性(HA),大型系统比如大型网站则要求更好的伸缩性。
容错(fault tolerance)
高可用环境下的数据不见得肯定是正确的数据。在Java EE集群中,当一个服务器实例宕机(以后统称“失败”)后,服务通过集群中别的服务器依然可用。但是在失败的那台服务器中正在处理的请求也许就不能获取正 确的数据了。所以,容错技术可始终保证在特定的错误环境下也能执行正确的行为。
失败转移(Failover)
失败转移是集群当中的另一项实现容错的重要技术。失败转移通过在集群中选择另一节点,将能延续失败节点上的服务。失败转移可通过代码指定或者自动通过底层平台的通信链路进行自动切换。
幂等方法(Idempotent methods)
幂 等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。例 如,“getUsername()”函数就是一个幂等函数,“deleteFile()”函数就不是。“幂等”是HTTP Session和EJB失败转移中的一个重要概念,。
集群层次说明
1、Web级集群,是J2EE集群中最重要和基础的功能。web层集群技术包括:Web负载均衡和HTTPSession失效转移。
web负载均衡,基本的是在浏览器和web服务器之间放置负载均衡器。
2、应用级集群,是ejb集群,EJB是J2EE应用平台的核心,EJB是用于开发和部署具多层结构的、分布式的、面向对象的Java应用系统跨平台的构件体系结构。主要是业务应用,部署在EJB容器上。
3、级集群,比如在oracle设置多个实例,全部映射到。
可扩展性(scalability)
在一些的系统中,不太好预估确切的用户数和他们的行为。可扩展性即指系统能够支撑用户数量激增的情况。立马能想到的提高可扩展性(并发会话)的办法是在服务器上增加资源(内存、CPU……)。集群技术是解决这个问题的另一途径。集群支持一组服务器从逻辑上作为单独的服务器运行,但共同分担系统负载。
高可用性(high availability)
采用单一服务器解决方案(增加内存、CPU等)来解决可扩展性的问题并非完美,因为系统失败集中于一点(单一服务器)上。任务关键型的应用(银行的或者是计费系统)不能容忍哪怕只有一分钟的宕机。所以需要这些服务在任何时刻都必须可以访问。集群技术是达到这类高可用要求的解决方案,它通过在集群中提供附加的服务器来保证一旦其中的某个服务器宕机时服务的延续性。
负载均衡(load balance)
负载均衡是集群技术中重要的一部分。通过将请求分发到不同的服务器,它提供了可同时获得高可用性和更高性能的服务的方法。简单的负载均衡器可以是一个Servlet或一些插件,复杂的负载均衡器可能是高级的嵌入了SSL的硬件设备。
除了分发请求之外,负载均衡器还负责执行一些重要的任务:
1、 “会话持久”用来确保用户会话生命周期在一台服务器上的完整性。
2、 “心跳”来检查失败的服务器。
3、 在某些情况下,负载均衡器需要参与“失败转移”的过程,下文中会提及。
Web层集群实现
Web层的集群技术是Java EE集群技术中最基础且最重要的部分。Web集群技术包括:Web负载均衡与HTTPSession失败转移。
Web负载均衡
Java EE的供应商通过多种方式实现Web负载均衡。总的来说,负载均衡器在浏览器和Web服务器之间进行,如下图:
诸如F5负载均衡器这样的硬件产品可以担当这个工作,也有可能是一个有负载均衡插件的另一个Web服务器。无论使用什么技术,负载均衡器通常具有以下特点:
实现了负载均衡的算法
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shenmilingyu/article-15745-1.html
更惶论与倭相较了
在这里你说关你鸟事
我词穷了T_T