Linux记录-Nginx+Tomcat负载均衡配置
Nginx负载均衡配置及策略:
轮询(默认)
优点:实现简单
缺点:不考虑每台服务器的处理能力
配置示例如下:
upstream www.xxx.com {
# 需要负载的server列表
server www.xxx.com:8080;
server www.xxx.com:9080;
}
权重,使用的较多的策略
优点:考虑了每台服务器处理能力的不同,哪台机器性能高就给哪台机器的权重高一些
配置示例如下:
upstream www.xxx.com {
# 需要负载的server列表,weight表示权重,weight默认为1,如果多个配置权重的节点,比较相对值
server www.xxx.com:8080 weight=15;
server www.xxx.com:9080 weight=10;
}
ip hash
优点:能实现同一个用户始终访问同一个服务器
缺点:根据 ip hash 不一定平均
配置示例如下:
upstream www.xxx.com {
ip_hash;
# 需要负载的server列表
server www.xxx.com:8080;
server www.xxx.com:9080;
}
url hash (第三方插件)
优点:能实现同一个服务访问同一个服务器,也就是根据url进行负载
缺点:和ip hash一样,根据 url hash 分配请求不一定平均,请求频繁的url会请求到同一台服务器上
配置示例如下(需要事先安装插件)
upstream www.xxx.com {
# 需要负载的server列表
server www.xxx.com:8080;
server www.xxx.com:9080;
hash $request_uri;
}
fair (第三方插件)
特点:按后端服务器的响应时间来分配请求,响应时间短的优先分配
配置示例如下(需要事先安装插件)
upstream www.xxx.com {
# 需要负载的server列表
server www.xxx.com:8080;
server www.xxx.com:9080;
fair;
}
一些负载均衡参数简介:
upstream www.xxx.com {
ip_hash;
# 需要负载的server列表
server www.xxx.com:8080 down; # down表示当前的server暂时不参与负载
server www.xxx.com:9080 weight=2; # weight默认值为1,weight的值越大,负载的权重就越大
server www.xxx.com:7080 backup; # 其他所有的非backup机器,在down掉或者很忙的时候,才请求backup机器,也就是一个备用机器
server www.xxx.com:6080;
}
1.安装两个tomcat实例
要修改8005 8080 8009三个端口 以免冲突
修改index.jsp分别加入<h2>I 'm 8088</h2> <h2>I 'm 8089</h2>
启动服务:sh startup.sh
2.配置nginx
nginx.conf
user nobody nobody;
worker_processes 2;
#error_log /usr/local/nginx/logs/nginx_error.log crit;
#pid /usr/local/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 6000;
}
http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 3526;
server_names_hash_max_size 4096;
log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
' $host "$request_uri" $status'
' "$http_referer" "$http_user_agent"';
sendfile on;
tcp_nopush on;
keepalive_timeout 30;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size 256;
client_header_buffer_size 1k;
large_client_header_buffers 8 4k;
request_pool_size 4k;
output_buffers 4 32k;
postpone_output 1460;
client_max_body_size 10m;
client_body_buffer_size 256k;
#client_body_temp_path /usr/local/nginx/client_body_temp;
#proxy_temp_path /usr/local/nginx/proxy_temp;
#fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
fastcgi_intercept_errors on;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_comp_level 5;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css text/htm
application/xml;
add_header Access-Control-Allow-Origin *;
include /etc/nginx/conf.d/*.conf;
}
vim /etc/nginx/conf.d/tomcat.conf
upstream 192.168.66.128 {
server 192.168.66.128:8088 weight=1;
server 192.168.66.128:8089 weight=3;
}
server {
listen 80;
autoindex on;
server_name _;
access_log /usr/local/nginx/logs/access.log combined;
index index.html index.htm index.jsp;
root /usr/share/nginx/html/;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
proxy_pass http://192.168.66.128;
add_header Access-Control-Allow-Origin *;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
nginx -t 检测配置是否正确
启动服务 nginx
查看端口是否监听
lsof -i:80
lsof -i:89
然后浏览器输入
192.168.66.128

刷新页面

Linux记录-Nginx+Tomcat负载均衡配置的更多相关文章
- Nginx + Tomcat 负载均衡配置详解
Nginx常用操作指南一.Nginx 与 Tomcat 安装.配置及优化1. 检查和安装依赖项 yum -y install gcc pcre pcre-devel zlib zlib-devel o ...
- Linux下Nginx+Tomcat负载均衡和动静分离配置要点
本文使用的Linux发行版:CentOS6.7 下载地址:https://wiki.centos.org/Download 一.安装Nginx 下载源:wget http://nginx.org/pa ...
- centos6 Nginx+Tomcat负载均衡配置
一.Nginx简介 Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,目前使用最多的就是负载均衡,具体简介我就不介绍了百度一下有很多,下面直接进入安装步骤 二.Nginx安装 1.下载N ...
- Nginx+tomcat负载均衡配置
Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1.JAVA JDK ...
- windows环境下最简单的nginx + tomcat负载均衡配置示例
后端是两台tomcat服务器,我们简称为node1 和node2,访问地址分别是 http://192.168.1.2:8080 和 http://192.168.1.4:8080 前端使用nginx ...
- linux+nginx+tomcat负载均衡,实现session同步
linux+nginx+tomcat负载均衡,实现session同步 花了一个上午的时间研究nginx+tomcat的负载均衡测试,集群环境搭建比较顺利,但是session同步的问题折腾了几个小时才搞 ...
- nginx+tomcat负载均衡
最近练习nginx+tomcat负载均衡.根据一些资料整理了大体思路,最终实现了1个nginx+2个tomcat负载均衡. 安装JDK 1>进入安装目录,给所有用户添加可执行的权限 #chmod ...
- Nginx+Tomcat负载均衡、动静分离群集
Nginx+Tomcat负载均衡.动静分离群集 目录 Nginx+Tomcat负载均衡.动静分离群集 一.Tomcat 1. Tomcat简介 2. Tomcat重要目录 二.Nginx负载均衡原理 ...
- Nginx安装负载均衡配置 fair check扩展
前言 本文主要是针对Nginx安装.负载均衡配置,以及fair智能选举.check后端节点检查扩展功能如何扩展,进行讲解说明. fair模块: upstream-fair,“公平的”Nginx 负载均 ...
随机推荐
- Python如何实现doc文件转换为docx文件?
Python如何实现doc文件转换为docx文件? 在开发过程中遇到一个关于读写doc和docx的问题: 一个文件夹中有两种文件, 一种为doc结尾, 一种为docx结尾, 需要将这些文件全部重命名. ...
- 什么是ARP协议?
ARP协议,全称“Address Resolution Protocol”,中文名是地址解析协议, 使用ARP协议可实现通过IP地址获得对应主机的物理地址(MAC地址). 在TCP/IP的网络环境下, ...
- K Edit Distance
Description Given a set of strings which just has lower case letters and a target string, output all ...
- Codeforces Round #508 (Div. 2)【A,B,C,D】【实验室日常周赛训练】
#include<bits/stdc++.h> using namespace std; #define inf 0x3f3f3f3f3f3f #define int long long ...
- sql server 视图的用法
Sql server中 如何用sql语句创建视图 1.视图的作用 视图的作用: 第一点:使用视图,可以定制用户数据,聚焦特定的数据. 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例 ...
- Centos7 源码安装PostgreSQL Citus集群 (转载)
citus的分布式集群目前在苏宁大规模应用,苏宁陈华军也做了很多技术分享和博客介绍.目前所有的教程都是rpm和pg一起安装,个人不喜欢,毕竟citus定位是个插件,我想在我已安装的pg上源码装一个ci ...
- webuploader如何实现分片+断点续传
javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1. 通过form表单向后端发送请求 <form id=&quo ...
- 洛谷 P2313 [HNOI2005]汤姆的游戏 题解
P2313 [HNOI2005]汤姆的游戏 题目描述 汤姆是个好动的孩子,今天他突然对圆规和直尺来了兴趣.于是他开始在一张很大很大的白纸上画很多很多的矩形和圆.画着画着,一不小心将他的爆米花弄撒了,于 ...
- python模块之psutil
一.模块安装 1.简介 psutil是一个跨平台库(http://pythonhosted.org/psutil/)能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息. ...
- Java 多线程之生产者消费者(多个生成者多个消费者)synchronized 和lock多线程通讯和同步实现
public class ProducterConsumerSample { public static void main(String[] args) { Resourse res = new R ...