nginx安装和Tomcat安装详情见下面文章
《Tomcat8安装》
《Nginx1.18安装》
Nginx配置说明--nginx.conf
#编辑nginx.conf
vim /usr/local/nginx/conf/nginx.conf
#这里是核心worker数,一般设置为与cpu核心数相同的数目
worker_processes 1;
#日志存放位置
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid存放位置
#pid logs/nginx.pid;
events {
#选择nginx的轮训方式,如果不填写会自动匹配最合适的方式
#默认 select poll 适合mac kqueue 适合linux epoll
use epoll;
#工作进程的最大连接数量
#理论上每台nginx服务器的最大连接数为worker_processes*worker_connections
worker_connections 1024;
#keepalive超时时间。 这里指的是http层面的keep-alive 并非tcp的keepalive
keepalive_timeout 60;
#客户端请求头部的缓冲区大小
#这个可以根据你的系统分页大小来设置,一般一个请求头的大小不会超过1k
#不过由于一般系统分页都要大于1k,所以这里设置为系统分页大小。
#查看系统分页可以使用 getconf PAGESIZE命令
client_header_buffer_size 4k;
#为打开文件指定缓存,默认是没有启用的,max指定缓存最大数量
#建议和打开文件数一致,inactive是指经过多长时间文件没被请求后删除缓存
open_file_cache max=2000 inactive=60s;
#这个是指多长时间检查一次缓存的有效信息
open_file_cache_valid 60s;
#open_file_cache指令中的inactive参数时间内文件的最少使用次数
open_file_cache_min_uses 1;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#gzip on;
#定义一组服务器。 这些服务器可以监听不同的端口
#weight=5 权重分配
#max_fails=10 最大失败次数超过次数认为该通信不可用
#fail_timeout=60s 如果判断失败nginx在指定的时间内不会在分发到该服务器
upstream weba.com{
server 127.0.0.1:1080 weight=5;
}
server {
listen 80;
server_name weba.xacom.cn;
location / {
proxy_pass http://weba.com;
proxy_redirect default;
}
}
Nginx+Tomcat集群
1、单项目多个tomcat负载
在设置里面修改
upstream webb.com{
server 127.0.0.1:2080;
server 127.0.0.1:1080;
server 这里写更多的tomcat端口
...
}
server {
listen 80;
server_name webb.xacom.cn;
location / {
proxy_pass http://webb.com;
proxy_redirect default;
}
}
2、一个服务器放多个tomcat跑不同的项目
在设置里面修改
upstream weba.com{
server 127.0.0.1:1080 weight=5;
}
server {
listen 80;
server_name weba.xacom.cn;
location / {
proxy_pass http://weba.com;
proxy_redirect default;
}
}
upstream webb.com{
server 127.0.0.1:2080;
}
server {
listen 80;
server_name webb.xacom.cn;
location / {
proxy_pass http://webb.com;
proxy_redirect default;
}
}
设置不同的upstream可以让不同的域名访问不同的项目