Apache(web服务器)与Tomcat(应用服务器)搭建集群
web服务器:Apache、Nginx、IIS等
应用服务器:Tomcat、JBoss、Weblogic等
现在web服务器和应用服务器其实界限已经不是太清晰了,大部分的应用服务器也包含一些web服务器的功能,使用什么服务器大部分取决与架构场景和技术解决方案。
在服务器集群中,主要场景是一下几种:
1,静态资源优化
2,多环境应用整合
3,负载均衡
4,其他复合场景
接下来准备将Apache(web服务器)与两个Tomcat(应用服务器)集成在一起。
1.环境准备
1.1 Apache安装
windows下面安装Apache简单很多,直接类似软件点击下一步安装一下,配置一下端口号(默认80)。启动就好了。

访问localhost:80/index.html

1.2 Tomcat1与Tomcat2准备
在tomcat官网下载两个免安装的zip包直接解压出来tomcat1和tomcat2;
在tomcat1的目录下打开tomcat1/conf/server.xml,修改HTTP/1.1端口号为:8081
<Connector port="" protocol="HTTP/1.1"
connectionTimeout=""
redirectPort="" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
在tomcat1的目录下打开tomcat1/conf/server.xml,修改HTTP/1.1端口为:8082,AJP端口为:8010,redirectPort:8444,Server port:8006,避免与tomcat1端口冲突,因为我这里使用的一台机器搭建的集成环境。
<Connector port="" protocol="HTTP/1.1"
connectionTimeout=""
redirectPort="" />
<Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />
在tomcat/bin目录下点击startup.bat,启动两个tomcat,这里有一个控制台乱码问题,修改一下tomcat/conf/logging.properties,把编码改为GBK

在idea控制台里面有时也会出现类似问题,修改字符集就可以解决。


1.3 在tomcat1和tomcat2的webapps清空,并放入自己测试的资源sample1和sample2的index.html
hello,tomcat1!
hello,tomcat2!
重启tomcat1和tomcat2访问
localhost:8081/sample1/index.html

localhost:8082/sample2/index.html

2.集群配置
2.1修改httpd.conf,加载模块
这里为什么加载mod_jk模块,Apache与tomcat集成是可以通过AJP协议也可以通过HTTP协议,可以使用mod_jk(AJP)和mod_proxy+mod_proxy_ajp(AJP)集成也可以使用mod_proxy+mod_proxy_http(HTTP),这里使用是mod_proxy+mod_proxy_http。
在Apache目录下的modules找一下,没有mod_jk.so,他是tomcat提供的,可以按照自己的机器和Apache版本找一个放在modules下面。
mod_jk.so下载地址http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/
我这里为了方便,直接使用mod_proxy.so+mod_proxy_http.so
接下来修改httpd.conf,加载mod_proxy.so、mod_proxy_http.so模块去掉#
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_module modules/mod_proxy_http.so
在httpd.conf的最后一行,重新开一行,没有任何结束符号的空白地方增加
ProxyPass "/sample1" "http://localhost:8081/sample1"
ProxyPassReverse "/sample1" "http://localhost:8081/sample1"
ProxyPass "/sample2" "http://localhost:8082/sample2"
ProxyPassReverse "/sample2" "http://localhost:8082/sample2"
访问localhost:80/sample1

访问localhost:80/sample2

Apache(web服务器)与Tomcat(应用服务器)搭建集群的更多相关文章
- apache和tomcat搭建集群
最近在学习简单的apache服务器和两个tomcat一起搭建集群,这里简单记录一下 1.准备工作 ①搭建一个可以运行的web项目 用maven搭建springmvc项目 ,只要将这里面的web.xml ...
- Nginx学习笔记(反向代理&搭建集群)
一.前言 1.1 大型互联网架构演变历程 1.1.1 淘宝技术 淘宝的核心技术(国内乃至国际的 Top,这还是2011年的数据) 拥有全国最大的分布式 Hadoop 集群(云梯,2000左右节点,24 ...
- [link] 构建负载均衡服务器之一 负载均衡与集群详解
一.什么是负载均衡 首先我们先介绍一下什么是负载均衡: 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载, ...
- Linux平台上搭建apache+tomcat负载均衡集群
传统的Java Web项目是通过tomcat来运行和发布的.但在实际的企业应用环境中,采用单一的tomcat来维持项目的运行是不现实的.tomcat 处理能力低,效率低,承受并发小(1000左右).当 ...
- 用apache和tomcat搭建集群,实现负载均衡
型的企业应用每天都需要承受巨大的访问量,在着巨大访问量的背后有数台服务器支撑着,如果一台服务器崩溃了,那么其他服务器可以使企业应用继续运行,用户对服务器的运作是透明化的,如何实现这种透明化呢?由如下问 ...
- Apache + Tomcat + mod_jk实现集群服务
Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用apache 分发请求到tomcat中的对应的项目 环境说明: 操作系统:window xp Jav ...
- Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享
小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲.OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redi ...
- 2.Apache + Tomcat + mod_jk实现集群服务
转自:http://www.cnblogs.com/dennisit/p/3370220.html Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用 ...
- Apache + Tomcat + mod_jk实现集群服务及session共享
实现效果:用apache 分发请求到tomcat中的对应的项目 原理:
- Apache + Tomcat +mod_jk 实现集群
实现效果:用apache 分发请求到tomcat中的对应的项目 环境说明: 操作系统:window7 Javasdk: 1.7 Apache: 2.2.14 (本地安装路径:D:\Apache2 ...
随机推荐
- ORA-02291: 违反完整约束条件 - 未找到父项关键字问题解决
ORA-02291: 违反完整约束条件 - 未找到父项关键字问题解决 总体说说可能出现的原因: 情况场景: 表A中有个字段是外键,关联了表B中的某字段,再往表A插入数据时,会出现这种情况. 可能原因: ...
- C++数据结构之哈希表
哈希表的定义:哈希表是一种根据关键码去寻找值的数据映射结构,该结构通过把关键码映射的位置去寻找存放值的地方.键可以对应多个值(即哈希冲突),值根据相应的hash公式存入对应的键中. 哈希函数的构造要求 ...
- Java split(".") 和 split("\\.")
Java split(".") 和 split("\\.") 问题描述 使用 . 分解 IP 的各个段,并打印,如:192.168.10.123,分解为 192 ...
- <li>元素的排序
要点: getElementsByTagName("li")返回的是HTMLCollection对象,这个对象不同于Array对象,不能使用sort()方法进行排序~ 下面方法的要 ...
- appium+python+android+HTMLTestRunner使用过程中的问题
1:问:appium客户端刚发布了一版新的,我想升级可以吗?答:建议对于刚发布的新版本不要立即升级,因为客户端每升级一版它肯定会去增加和删减一些语句.所以不建议立即升级. 应该先采取调研的态度看 ...
- 在pythonanywhere.com免费网站建立虚拟机环境以及django网站
注册,添加App,选择python3.5,然后打开控制台 搭建python3.5虚拟环境 python --version virtualenv -p /usr/bin/python3.5 VENV ...
- gin框架教程三:JWT的使用
JWT介绍 JWT (JSON Web Token) 是一种规范.这个规范允许我们使用JWT在用户和服务器之间安全传递信息. JWT的组成: jwt分3个部分,Header 头部.Payload 载荷 ...
- Anaconda安装pygame
注:安装任何库前,都先更新下pip版本 python -m pip install --upgrade pip 安装pygame : pip install pygame
- 利用fiddler+nginx模拟流量识别与转发
最近看到一些关于全链路压测的文章,全链路压测主要处理以下问题: 数据清洗压测流量标记,识别 压测流量标记的传递测试数据与线上数据隔离等等... 要实现全链路压测,必然要对原有的业务系统进行升级,要怎么 ...
- 【PP系列】SAP PP模块工作中心主数据维护
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[PP系列]SAP PP模块工作中心主数据维护 ...