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(应用服务器)搭建集群的更多相关文章

  1. apache和tomcat搭建集群

    最近在学习简单的apache服务器和两个tomcat一起搭建集群,这里简单记录一下 1.准备工作 ①搭建一个可以运行的web项目 用maven搭建springmvc项目 ,只要将这里面的web.xml ...

  2. Nginx学习笔记(反向代理&搭建集群)

    一.前言 1.1 大型互联网架构演变历程 1.1.1 淘宝技术 淘宝的核心技术(国内乃至国际的 Top,这还是2011年的数据) 拥有全国最大的分布式 Hadoop 集群(云梯,2000左右节点,24 ...

  3. [link] 构建负载均衡服务器之一 负载均衡与集群详解

    一.什么是负载均衡 首先我们先介绍一下什么是负载均衡: 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载, ...

  4. Linux平台上搭建apache+tomcat负载均衡集群

    传统的Java Web项目是通过tomcat来运行和发布的.但在实际的企业应用环境中,采用单一的tomcat来维持项目的运行是不现实的.tomcat 处理能力低,效率低,承受并发小(1000左右).当 ...

  5. 用apache和tomcat搭建集群,实现负载均衡

    型的企业应用每天都需要承受巨大的访问量,在着巨大访问量的背后有数台服务器支撑着,如果一台服务器崩溃了,那么其他服务器可以使企业应用继续运行,用户对服务器的运作是透明化的,如何实现这种透明化呢?由如下问 ...

  6. Apache + Tomcat + mod_jk实现集群服务

    Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用apache 分发请求到tomcat中的对应的项目 环境说明: 操作系统:window xp Jav ...

  7. Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享

    小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲.OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redi ...

  8. 2.Apache + Tomcat + mod_jk实现集群服务

    转自:http://www.cnblogs.com/dennisit/p/3370220.html Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用 ...

  9. Apache + Tomcat + mod_jk实现集群服务及session共享

    实现效果:用apache 分发请求到tomcat中的对应的项目 原理:

  10. Apache + Tomcat +mod_jk 实现集群

    实现效果:用apache 分发请求到tomcat中的对应的项目 环境说明: 操作系统:window7 Javasdk: 1.7 Apache: 2.2.14    (本地安装路径:D:\Apache2 ...

随机推荐

  1. LC 833. Find And Replace in String

    To some string S, we will perform some replacement operations that replace groups of letters with ne ...

  2. vue 登录页面填坑

    上边的导航头,会显示在登陆页面上,暂时的解决办法实: <template> <div style="position: fixed; top:0px; left:0px;h ...

  3. 搭建与破解wiki (confluence)

    搭建环境: 操作系统:contos7 数据库:5.5.60-MariaDB java版本: jdk-11.0.2 confluence版本:confluence6.7.1 一. 准备工作 下载conf ...

  4. Prism框架 如何在主程序中合理的弹出子窗体

    说起子窗体,大家都会想到ChildWindow,多熟悉的一个控件.不错,Sliverlight中已经提供了子窗体的具体实现,而在WPF中却没有这么好的事情(有的第三方控件商已经提供此控件).最常见的实 ...

  5. Nginx 代理TCP/UDP 端口

    Nginx 在1.9版本后新增TCP/UDP 代理 Nginx默认是没有开启TCP/UDP代理.需要在编译Nginx是添加--with-stream进行开启. 编译安装Nginx tar zxf cd ...

  6. Python——作业12(选做)选中矩阵的每行或每列画出对应的折线图(python programming)

    import os import platform import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5 ...

  7. python识别图片中的信息

    好好学习的第一步 一心一意的干好一件事儿,问自己 我做什么 我怎么做 做的结果是啥 例子1 问题 回答 我做什么: 识别图片上的信息 我怎么做: 百度+谷歌 结果是啥: 完成识别 1 安装PIL pi ...

  8. app测试自动化之测试套框架构造之公共部分以及测试用例导包二

    封装的公共部分:commonfrom time import sleepdef com(dr): #点击backup dr.find_element_by_android_uiautomator\ ( ...

  9. java位运算定义常量

    简单说一下位运算 按位与(&) 参加运算的两个数,换算为二进制(0.1)后,进行与运算.只有当相应位上的数都是1时,该位才取1,否则该为为0 按位或(|) 参加运算的两个数,换算为二进制(0. ...

  10. 分片式图片服务器fastDFS安装过程

    1. 什么是FastDFS FastDFS 是用 c 语言编写的一款开源的分布式文件系统.FastDFS 为互联网量身定制, 充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标, ...