JBoss集群基础知识

JBoss集群配置概念

JBoss集群(Cluster)是一组计算机节点的集合,它们作为一个整体向用户提供一组网络资源。一个理想的集群对用户是透明的。用户由单一入口访问集群的资源,从来不会意识到集群中的节点。在他们看来,集群是一个系统,而非多个计算机系统。集群还应该支持随意增加和减少集群系统的节点,而这同样不会影响到用户的访问。

JBoss集群分类

习惯上,JBoss集群配置的关键是把集群分为高可用(High Availability,简称HA)集群和高性能计算(High PerfermanceComputing,简称HPC)集群两类。HA集群的目标是提高系统的可使用性(availability),即可靠性(reliability)和可维护性(maintainability)。请不要将集群中的可使用性(availability)与UE和交互设计中的可用性(Usability)混淆。HA集群的核心是防止单点失效,这一般是通过失败转移来实现的,即在一个节点失效后由另一个节点接替服务。不丢失用户状态。HA集群的其他主要特性还包括负载均衡、session同步等。我们使用的SQL Server数据库的双机热备和Oracle的RAC都属于HA集群。HPC集群采用并行计算技术提供超大规模计算和存储能力,多数超级计算机都是HPC集群。这不是我们关注的集群。

JBoss集群架构

JBoss集群是HA集群。JBoss集群有2种架构。一是客户端拦截器(Client-side interceptor)架构,一是负载均衡器(Load balancer)架构。客户端拦截器架构适于用C/S结构,负载均衡器架构适用于B/S结构。本文只叙述负载均衡器架构的JBoss集群。

负载均衡器架构由负载均衡器和n个集群节点组成。每个节点是一个JBoss服务器实例。负载均衡器是全局唯一的前置机,全部用户请求都发到负载均衡器,由其转发到各节点。当负载均衡器发现一个节点失效后,会将请求转发到另一个节点上,从而保证服务得以延续。负载均衡器同时负责加权静态负载均衡调度。总之,负载均衡器的健康程度决定了集群的全局健康度,负载均衡器失败将导致集群全部失效。这是前置机架构集群的主要潜在问题。

JBoss的负载均衡器架构集群实际是由Tomcat的HTTP集群实现的。JBoss有自己的负载均衡器,但效果不佳,官方文档没有介绍,几乎没有人使用。一般情况下,我们都是采用apache+mod_jk作为负载均衡器。下文叙述的都是基于这种架构。mod_jk是apache的一个插件,负责apache与tomcat之间的通讯,是JBoss集群配置(tomcat集群)的关键。

Jboss版本的选择

目前,JBoss主要有3、4、5三个版本系列。JBoss 5目前只有2个beta版,实用尚需时日。JBoss 3的最后版本是2006年3月更新的3.2.8.SP1。随着JBoss 4日益成熟和JBoss 5的开发,已经停止更新1年多的Jboss 3逐渐淡出历史舞台。JBoss 4最新版本依次是4.2.1.GA、4.2.0.GA和4.0.5.GA。但官方网站提供的JBoss集群文档只更新到4.0.5 GA,所以选择JBoss 4.0.5 GA实现JBoss集群配置。

时间: 2024-11-03 08:02:18

JBoss集群基础知识的相关文章

Oracle RAC集群基础知识

对于RAC来说,最重要的还是要理解内部原理和体系结构.安装不是非常难的事情.排错和维护都离不开体系结构以及内部原理. 集群分类 1.高性能计算 计算任务分配到不同计算机节点来提高整体计算能力,主要应用在科学计算领域.主要利用的是并行计算. 2.负载均衡集群(LB) 把业务的负载流量尽可能的平均合理的分配到集群的各个节点上,每个节点都可以处理一部分负载,并且可以根据负载情况进行动态的平衡.负载均衡算法不是简单的平均,而是根据每个节点的可用资源或网络的特殊情况来进行优化分配.因此分配+合理才是负载均

运维小知识之nginx---nginx配置Jboss集群负载均衡

运维小知识之nginx---nginx配置Jboss集群负载均衡            背景          紧接着上一篇博客<运维小知识---CentOS6.5安装nginx配置nginx sticky>安装完成之后剩下的工作就是配置了,其实如果我们想要去做负载均衡session共享是一个绕不过去的问题,而解决session共享的方法有很多,我这里介绍的事使用nginx sticky,方便易用.            具体配置          由于目前的项目中会出现什么情况还不清楚,所以

JBoss集群配置代码实例

如果我们要想使得几台JBoss应用服务器互为备份(仅限于SESSION),在群内一台JBoss服务器down掉的时候,用户不受影响,继续以登陆用户身份进行工作,则我们需要配置Clustering,并启动相关服务,即JBoss集群配置下面将描述相关JBoss配置项: 1).修改应用APP的web.xml: Jboss3.2.6: ../default/deploy/jbossweb-tomcat50.sar/Test.war/WEB-INF/web.xml Jboss3.2.3: ../defau

在JBoss集群中建立JMS集群服务

JMS集群的意义在于提升系统在处理消息时的并发能力,建立这样的集群,有三个步骤: 1.配置JMS消息持久化所使用的数据库 2.配置分布式的jndi环境 3.配置分布式JMS集群 在JBoss集群中,系统采用hibernate的方式来保存消息,所以能够兼容hibernate支持的所有数据库. JBoss默认采用 hsql,在我们的例子中,将使用oracle 9.2.首先需要配置连接到数据库的jndi数据源. 方法是把doc\examples\jca下的 oracle-ds.xml文件拷贝到serv

Haproxy+Keepalived+Jboss集群实施架构一例

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://koumm.blog.51cto.com/703525/1546326 一.基础环境 两台IBM x3650M3,操作系统CentOS5.9 x64 ,连接一台IBM DS3400存储,系统底层采用GFS文件系统实现文件共享,数据库是另一套独立的oracle rac集群,本架构无需考虑数据库的问题.     GFS文件系统及相关配置见上一文IBM x3650M3+GFS+IPMI

网页javascript精华代码集_基础知识

[1.普通的弹出窗口]  <SCRIPT LANGUAGE=javascript>  <!--  window.open ('page.html')  -->  </SCRIPT>  <!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示 出来.用单引号和双引号都可以,只是不要混用.  [2.经过设置后的弹出窗口]  <SCRIPT LANGUAGE=javascript>  <!--  windo

JBOSS EAP实战(2)-集群、NGINX集成、队列与安全

JBOSS HTTP的Thread Group概念 JBOSS是一个企业级的J2EE APP Container,因此它和任何一种成熟的企业级中间件一样具有Thread Group的概念.所谓Thread Group就是一个HTTP队列机制,利用Thread Group在JBOSS内可以设置如"阻断","升级","降级"等机制.来看一个这样的实际应用场景:当你的JBOSS连着一堆核心应用时,此时突然你的HTTP的并发请求在某一个点激增,如果把这些

关于JBoss EJB3集群配置问题

问题描述 我用JBoss集群部署EJB3服务,但客户端怎么都只访问其中某一台服务,另一台怎么都不会去请求(除非某一台服务死掉了).prop.setProperty("java.naming.provider.url","localhost:1099,192.168.34.95:1099");这样就完全没有体现出集群的分担负载的特点啊.哪位大侠碰到过这样的问题,咋解决的啊!还望指点指点.我设想的情况是,例如:10个请求过来,有6个A服务处理,另4个B服务处理 解决方案

关于Nginx+Jboss高可用集群的问题

问题描述 有两台linux服务器,准备部署Nginx+Jboss高可用集群,准备在服务器1上安装Nginx和多个Jboss实例,服务器2上也是安装Nginx和多个Jboss实例,Nginx负责静态文件处理和前端调度,静态文件存储于两台服务器可共同访问的存储上.俩个Nginx中只有一个处于工作状态,所有Jboss实例均处于工作状态.实现效果:1.Jboss集群中的实例失效后,前端调度的Nginx负责把请求分发到其他Jboss实例,失效Jboss实例上的session转移到其他实例.2.其中一个Ng