利用nginx搭建tomcat集群
1、tomcat集群
利用nginx对请求进行分流,将请求平均的分给不同的tomcat去处理,减少单个tomcat的负载量,提高tomcat的响应速度。
2、创建多个tomcat服务器(同一个服务器上)
① 先安装配置好1个tomcat服务器
安装tomcat: http://www.cnblogs.com/origalom/p/7643425.html
以普通用户运行tomcat:http://www.cnblogs.com/origalom/p/7666897.html
② 将安装好的tomcat复制一份
cd /usr/local/tomcat/ # 进入tomcat所在目录
cp -r tomcat8080/ tomcat8081 # 复制一份新的tomcat
chown -R tomcat:tomcat tomcat8081/ # 修改tomcat目录的所有者
③ 修改daemon.sh
如果在创建tomcat时,在daemon.sh中设置了CATALINA_HOME等变量,则新拷贝的tomcat需要将这些变量设置成新的地址。
④ 修改端口,让新的tomcat可以正常运行
vim tomcat8081/conf/server.xml
修改tomcat内部的端口,使用一个未使用的端口号,一般可以往上加一:
第22行的8005端口: <Server port="8005" shutdown="SHUTDOWN">
第69行的8080端口:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
第116行的8009端口: <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
⑤ 修改tomcat项目的运行根目录
修改server.xml,将148行的appBase中的webapps改成项目所在地址:
<Host name="localhost" appBase="/usr/local/tomcat/tomcat8080/webapps"
unpackWARs="true" autoDeploy="true">
⑥ 启动tomcat,检查是否启动成功
sudo tomcat8081/bin/daemon.sh start
3、配置nginx负载均衡
配置nginx.conf配置文件。
user nginx;
worker_processes 1; error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info; pid logs/nginx.pid; events {
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; server_names_hash_bucket_size 256;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 8 128k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
server_tokens off;
send_timeout 60;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
client_header_timeout 3m;
client_body_timeout 3m;
client_max_body_size 2000m;
gzip on; # tomcat集群
#
upstream tomcat {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
} # HTTPS服务器
#
server {
listen 80;
listen 443 ssl;
server_name www.origal.cn; ssl_certificate /usr/local/nginx/conf/ssl/214324938610703.pem;
ssl_certificate_key /usr/local/nginx/conf/ssl/214324938610703.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on; location / {
index index.jsp; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
client_max_body_size 500m;
client_body_buffer_size 3m;
proxy_connect_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 6 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k; if (!-e $request_filename) {
proxy_pass http://tomcat;
}
} # 静态资源直接访问
location ~ \.(js|css|png|gif|jpg|jpeg|mp4|mp3|mpg|3gp|txt)$ {
root /usr/local/java/tomcat8080/webapps/;
if (!-e $request_filename) {
proxy_pass http://tomcat;
}
}
}
}
利用nginx搭建tomcat集群的更多相关文章
- linux下利用httpd搭建tomcat集群,实现负载均衡
公司使用运营管理平台是单点tomcat,使用量大,或者导出较大的运营数据时,会造成平台不可用,现在需要搭建tomcat集群,调研后,决定使用apache的httpd来搭建tomcat集群.以下是搭建步 ...
- 使用nginx搭建tomcat集群配置
软件准备: (1)jdk-8u73-linux-x64.tar.gz (2)apache-tomcat-7.0.57.tar.gz (3)nginx-1.7.7.tar.gz 准备3台Linux机器, ...
- Tengine(nginx) 搭建Tomcat集群
好久没有更新学习的内容了,就是得强迫自己写点东西 记录自己的学习,才能更好的进步! Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和 ...
- Docker如何使用nginx搭建tomcat集群
首先创建tomcat的文件夹 , 为了方便docker的配置 我这里直接在根目录中创建 第一步:创建文件夹:发布文件夹 mkdir -p /docker/tomcat/webapp8081 mkdir ...
- Docker+nginx搭建tomcat集群
1.环境准备: a.宿主机CentOS7 b.连接工具FinalShell c.镜像nginx1.20.1,tomcat (镜像拉取:docker pull 镜像名称) 2.创建nginx文件夹,to ...
- docker+nginx搭建tomcat集群(附录)——nginx.conf文件
附录:nginx.conf修改后的文件内容 user root;worker_processes 2; #error_log logs/error.log;#error_log logs/error. ...
- nginx的简单使用和使用nginx在windows上搭建tomcat集群
nginx是一款轻量级的web服务器,常用的作用为服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器 1.为什么我们要使用Nginx? 反向代理: 反向代理(Reverse Proxy ...
- 使用Nginx搭建Tomcat9集群,Redis实现Session共享
使用Nginx搭建Tomcat9集群,Redis实现Session共享 1.tomcat准备 首先准备两个tomcat9 ,修改配置文件server.xml 如果在多个服务器上分别启动tomcat 则 ...
- Linux下搭建tomcat集群全记录(转)
本文将讲述如何在Linux下搭建tomcat集群,以及搭建过程中可能的遇到的问题和解决方法.为简单起见,本文演示搭建的集群只有两个tomact节点外加一个apache组成,三者将安装在同一机器上:ap ...
随机推荐
- Centos7更改网卡名为eth0
1.先更该网卡配置文件设备名和网卡名参数: vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 NAME=eth0DEVICE=eth0 2.将配 ...
- MVC中Model和model的区别和用户
MVC中Model和model的区别,它们应该怎么用呢? 使用@model关键字可以定义一个Action里所对应的一个模型(经常可以叫他实体类). MVC的第一个字母M是Model,承载着View层和 ...
- [BZOJ4989][Usaco2017 Feb]Why Did the Cow Cross the Road 树状数组维护逆序对
4989: [Usaco2017 Feb]Why Did the Cow Cross the Road Time Limit: 10 Sec Memory Limit: 256 MBSubmit: ...
- (4)C#工具箱-菜单和工具栏
1.ContextMenuStrip(右键菜单栏) 把contextMenuStrip控件拖到窗体上,会在窗体下面显示,点击控件在最上行显示菜单栏,可以任意设置.(运行以后不会在界面上显示,它需要预控 ...
- ESXI和vSphere的安装配置-实现一台电脑硬件虚拟化为两台
本篇文章包含以下几个部分: 1EXSI软件和vSphere软件的安装 2在vSphere上安装虚拟系统 3对虚拟系统通过配置实现硬件虚拟化,实现硬件直通 1.EXSI安装 通过网上下载EXSI ISO ...
- spoj 375 Query on a tree (树链剖分)
Query on a tree You are given a tree (an acyclic undirected connected graph) with N nodes, and edges ...
- SQL RANK、DENSE_RANK、NTILE
现有数据如下: SELECT *, ROW_NUMBER() OVER (ORDER BY 科目) AS 'Row Number', RANK() OVER (ORDER BY 科目) AS 'Ran ...
- 在mac上运行android的intel模拟器导致的死机问题解决
最近用Mac开发android的时候遇到了一个烦人的问题,装上了HAXM,intel hardware accelerated execution manager以后,一运行android emula ...
- red-lang
Red is a next-generation programming language strongly inspired by Rebol, but with a broader field o ...
- UBIFS - UBI File-System
参考:http://www.linux-mtd.infradead.org/doc/ubifs.html#L_raw_vs_ftl UBIFS - UBI File-System Table of c ...