利用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 ...
随机推荐
- pythontips(1):打印模块的属性并执行
import sys import site def print_all(module_): modulelist = dir(module_) length = len(modulelist) fo ...
- 本地添加maven支持
第一步:添加maven支持,去Apache maven官网下载maven, 解压 在conf文件夹里有个settings.xml,这个是需要自己配置的,不然的话也会有默认,只是那样的话会在C盘了,不喜 ...
- J.U.C并发框架源码阅读(六)ConditionObject
基于版本jdk1.7.0_80 java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject 代码如下 /** * Con ...
- JSK 11: 移除数组中的重复元素
题目描述 给定一个升序排列的数组,去掉重复的数,并输出新的数组的长度. 例如:数组 $A = \{1, 1, 2\}$,你的程序应该输出 $2$ 即新数组的长度,新数组为 $\{1, 2\}$. 要求 ...
- bzoj 3462: DZY Loves Math II
3462: DZY Loves Math II Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 211 Solved: 103[Submit][Sta ...
- iOS 7.1 arm64 编辑报错 警告解决办法
昨天把我的4S更新到iOS7.1,今天发下需要更新Xcode到5.1,发现打包项目Archive的时候,多了一堆警告和错误,很是郁闷. 郁闷没有用,作为一个合格的程序员,要学会淡定!看看警告和错误的大 ...
- Android中Context详解 ---- 你所不知道的Context(转)
Android中Context详解 ---- 你所不知道的Context(转) 本文出处 :http://b ...
- linux-查找命令-find
1. 按文件名(目录)查找.(*代表模糊匹配) find / -name curl 在根目录查找名字是curl的文件名(目录) find / -name "*curl*" ...
- JAVA中使用freemark生成自定义文件(json、excel、yaml、txt)
原文:http://blog.csdn.net/jinzhencs/article/details/51461776 场景:在我们工作中,有时需要生成一些文件,可能它不是一种标准的格式,比如JSON. ...
- 推荐一款Java反编译器,比较好用
转自:http://www.blogjava.net/xmatthew/archive/2008/10/28/237203.html 推荐一款Java反编译器,也使用了挺久的了,感觉还是很好用,就拿出 ...