JBoss4.2.3GA+Apache/2.2.11+mod_jk1.2.28 搭建负载均衡 全过程记录(附上搭建环境)
2012-12-09 01:19
615 查看
都是从网上搜集,再通过自己的实践总结出来的,相信对没做过Load Balancing的同学会有一定帮助。
先来三章概念:
1. JBoss集群配置概念
JBoss集群(Cluster)是 一组计算机节点的集合,它们作为一个整体向用户提供一组网络资源。一个理想的集群对用户是透明的。用户由单一入口访问集群的资源,从来不会意识到集群中的 节点。在他们看来,集群是一个系统,而非多个计算机系统。集群还应该支持随意增加和减少集群系统的节点,而这同样不会影响到用户的访问。
2. JBoss集群分类
习惯上,JBoss集群配置的关键是把集群分为高可用(HighAvailability,简称HA)集群和高性能计算(HighPerfermanceComputing,简称HPC)集群两类。HA集群的目标是提高系统的可使用性(availability),即可靠性(reliability)和可维护性(maintainability)。请不要将集群中的可使用性(availability)与UE和交互设计中的可用性(Usability)混淆。HA集群的核心是防止单点失效,这一般是通过失败转移来实现的,即在一个节点失效后由另一个节点接替服务。不丢失用户状态。HA集群的其他主要特性还包括负载均衡、session同步等。我们使用的SQLServer数据库的双机热备和Oracle的RAC都属于HA集群。HPC集群采用并行计算技术提供超大规模计算和存储能力,多数超级计算机都是HPC集群。这不是我们关注的集群。
3. JBoss集群架构
JBoss集群是HA集群。JBoss集群有2种架构。一是客户端拦截器(Client-sideinterceptor)架构,一是负载均衡器(Loadbalancer)架构。客户端拦截器架构适于用C/S结构,负载均衡器架构适用于B/S结构。本文只叙述负载均衡器架构的JBoss集群。
负载均衡器架构由负载均衡器和n个集群节点组成。每个节点是一个JBoss服 务器实例。负载均衡器是全局唯一的前置机,全部用户请求都发到负载均衡器,由其转发到各节点。当负载均衡器发现一个节点失效后,会将请求转发到另一个节点 上,从而保证服务得以延续。负载均衡器同时负责加权静态负载均衡调度。总之,负载均衡器的健康程度决定了集群的全局健康度,负载均衡器失败将导致集群全部 失效。这是前置机架构集群的主要潜在问题。
JBoss的负载均衡器架构集群实际是由Tomcat的HTTP集群实现的。JBoss有自己的负载均衡器,但效果不佳,官方文档没有介绍,几乎没有人使用。一般情况下,我们都是采用apache+mod_jk作为负载均衡器。下文叙述的都是基于这种架构。mod_jk是apache的一个插件,负责apache与tomcat之间的通讯,是JBoss集群配置(tomcat集群)的关键。
4.准备环境
文件都上传在金山网盘上
文件名:mod_jk-1.2.28-httpd-2.2.3.so, 访问地址: http://www.kuaipan.cn/file/id_55504313337774089.htm ,访问密码:T5P6iu
文件名: jboss-4.2.3.GA.zip , http://www.kuaipan.cn/file/id_55504313337774088.htm 访问密码:Tt6aA4
文件名:apache_2.2.11-win32-x86-no_ssl.msi, http://www.kuaipan.cn/file/id_55504313337774087.htm 访问密码:epzU33
如果失效了搜索下面文件名下载:
1)jboss-4.2.3.GA.zip
2)apache_2.2.11-win32-x86-no_ssl
3)mod_jk-1.2.28-httpd-2.2.3.so
5、安装JDK什么的不用说了吧 略过N字
6、安装apache_2.2.11-win32-x86-no_ssl
安装无非就是下一步下一步,不过有几点要注意:
1)路径不要有中文,不要空格(地球上的程序员都知道)
2)apache安装时提示占用的端口为80和8080 ,这两个端口都是容易占用的端口,安装的时候最好确保没被占用,
虽然安装之后可以修改他的端口,但是安装的时候要是被占用,不知道会不会有什么影响。
[b]正确安装后可以在电脑右下角看到testSession
红色字都是满重要的地方,或者是我在看网上资料是含糊不清的地方,在此做下总结。方便以后工作。
先来三章概念:
1. JBoss集群配置概念
JBoss集群(Cluster)是 一组计算机节点的集合,它们作为一个整体向用户提供一组网络资源。一个理想的集群对用户是透明的。用户由单一入口访问集群的资源,从来不会意识到集群中的 节点。在他们看来,集群是一个系统,而非多个计算机系统。集群还应该支持随意增加和减少集群系统的节点,而这同样不会影响到用户的访问。
2. JBoss集群分类
习惯上,JBoss集群配置的关键是把集群分为高可用(HighAvailability,简称HA)集群和高性能计算(HighPerfermanceComputing,简称HPC)集群两类。HA集群的目标是提高系统的可使用性(availability),即可靠性(reliability)和可维护性(maintainability)。请不要将集群中的可使用性(availability)与UE和交互设计中的可用性(Usability)混淆。HA集群的核心是防止单点失效,这一般是通过失败转移来实现的,即在一个节点失效后由另一个节点接替服务。不丢失用户状态。HA集群的其他主要特性还包括负载均衡、session同步等。我们使用的SQLServer数据库的双机热备和Oracle的RAC都属于HA集群。HPC集群采用并行计算技术提供超大规模计算和存储能力,多数超级计算机都是HPC集群。这不是我们关注的集群。
3. JBoss集群架构
JBoss集群是HA集群。JBoss集群有2种架构。一是客户端拦截器(Client-sideinterceptor)架构,一是负载均衡器(Loadbalancer)架构。客户端拦截器架构适于用C/S结构,负载均衡器架构适用于B/S结构。本文只叙述负载均衡器架构的JBoss集群。
负载均衡器架构由负载均衡器和n个集群节点组成。每个节点是一个JBoss服 务器实例。负载均衡器是全局唯一的前置机,全部用户请求都发到负载均衡器,由其转发到各节点。当负载均衡器发现一个节点失效后,会将请求转发到另一个节点 上,从而保证服务得以延续。负载均衡器同时负责加权静态负载均衡调度。总之,负载均衡器的健康程度决定了集群的全局健康度,负载均衡器失败将导致集群全部 失效。这是前置机架构集群的主要潜在问题。
JBoss的负载均衡器架构集群实际是由Tomcat的HTTP集群实现的。JBoss有自己的负载均衡器,但效果不佳,官方文档没有介绍,几乎没有人使用。一般情况下,我们都是采用apache+mod_jk作为负载均衡器。下文叙述的都是基于这种架构。mod_jk是apache的一个插件,负责apache与tomcat之间的通讯,是JBoss集群配置(tomcat集群)的关键。
4.准备环境
文件都上传在金山网盘上
文件名:mod_jk-1.2.28-httpd-2.2.3.so, 访问地址: http://www.kuaipan.cn/file/id_55504313337774089.htm ,访问密码:T5P6iu
文件名: jboss-4.2.3.GA.zip , http://www.kuaipan.cn/file/id_55504313337774088.htm 访问密码:Tt6aA4
文件名:apache_2.2.11-win32-x86-no_ssl.msi, http://www.kuaipan.cn/file/id_55504313337774087.htm 访问密码:epzU33
如果失效了搜索下面文件名下载:
1)jboss-4.2.3.GA.zip
2)apache_2.2.11-win32-x86-no_ssl
3)mod_jk-1.2.28-httpd-2.2.3.so
5、安装JDK什么的不用说了吧 略过N字
6、安装apache_2.2.11-win32-x86-no_ssl
安装无非就是下一步下一步,不过有几点要注意:
1)路径不要有中文,不要空格(地球上的程序员都知道)
2)apache安装时提示占用的端口为80和8080 ,这两个端口都是容易占用的端口,安装的时候最好确保没被占用,
虽然安装之后可以修改他的端口,但是安装的时候要是被占用,不知道会不会有什么影响。
[b]正确安装后可以在电脑右下角看到testSession
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class testSession */ public class testSession extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public testSession() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { synchronized (request) { doPost(request, response); } } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Object o = request.getSession().getAttribute("index"); if(o==null){ request.getSession().setAttribute("index", 1); System.out.println(1); }else{ request.getSession().setAttribute("index", new Integer(o.toString()).intValue()+1); System.out.println(request.getSession().getAttribute("index").toString()); } } }
红色字都是满重要的地方,或者是我在看网上资料是含糊不清的地方,在此做下总结。方便以后工作。
相关文章推荐
- JBoss4.2.3GA+Apache/2.2.11+mod_jk1.2.28 搭建负载均衡
- jdk+apache+jboss+mod_jk+openssl--从零开始搭建Linux测试环境
- jdk+apache+jboss +mod_jk+openssl--从零开始搭建Linux测试环境
- Linux(Ubuntu)下apache tomcat mod_jk实现负载均衡全过程
- JBoss 系列五十:使用Apache httpd(mod_jk)和JBoss构架高可用集群环境
- apache2.2.14 负载均衡过程中遇到问题记录;
- apache+tomcat+mod_jk做负载均衡
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- Linux下Apache+Tomcat+JK实现负载均衡和群集的完整过程
- 使用Apache + mod_jk + tomcat来实现tomcat集群的负载均衡出现的无法加载mod_jk.conf文件的问题
- 搭建分布式数据库负载均衡运行环境的一些配置记录(3)haproxy
- Apache+mod_jk+Tomcat+Memcached win32集群环境搭建
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- APACHE 2.2.8+TOMCAT6.0.14配置负载均衡 (apache集成mod_jk.so)
- Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程
- apache下jk_mod负载均衡的实现整合tomcat