主页 >PHP >linux下Nginx+Tomcat负载均衡装备办法

linux下Nginx+Tomcat负载均衡装备办法

  • PHP3523
  • 2018-05-07 17:15:16

这篇文章首要介绍了linux下Nginx+Tomcat负载均衡装备办法,需求的朋友能够参阅下

这篇文章首要介绍了linux下Nginx+Tomcat负载均衡装备办法,需求的朋友能够参阅下

Nginx+tomcat是现在干流的java web架构,怎样让nginx+tomcat一起作业呢,也能够说怎样运用nginx来反向署理tomcat后端均衡呢?直接装置装备如下:

1、JAVA JDK装置:

#下载相应的jdk软件包,然后解压装置,我这儿包名称为:jdk-7u25-linux-x64.tar.gz 
   
tar -xzf jdk-7u25-linux-x64.tar.gz ;mkdir -p /usr/java/ ;mv jdk1.7.0_25/ /usr/java/ 下. 
   
#然后装备环境变量,这样能够任何地方引证jdk,如下装备: 
   
#vi /etc/profile 最终面参加以下句子: 
   
export JAVA_HOME=/usr/java/jdk1.7.0_25 
   
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
   
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
   
#source /etc/profile  #使环境变量立刻收效 
   
#java --version  #检查java版别,看到jdk1.7.0_25版别即代表java jdk装置成功。


2、Nginx装置:

wget http://nginx.org/download/nginx-1.2.6.tar.gz 
   
useradd www 
   
tar zxvf nginx-1.2.6.tar.gz 
   
cd nginx-1.2.6/ 
   
./configure --user=www --group=www --prefix=/usr/local/nginx
 \--with-http_stub_status_module --with-http_ssl_module 
   
make && make install
   
#Nginx装置结束,然后运用指令:/usr/local/nginx/sbin/nginx -t 测验OK,代表nginx装置成功。 
   
/usr/local/nginx/sbin/nginx 回车发动nginx,能够经过拜访http://ip/看到nginx默许页面。


3、Tomcat装置:

#官方网站下载tomcat 6.0.30或许其他版别: 
   
cd /usr/src && tar xzf apache-tomcat-6.0.30.tar.gz 
   
#直接解压就能够运用,解压完结履行,一起仿制两个tomcat,命名为tomcat1 tomcat2 
   
mv apache-tomcat-6.0.30 /usr/local/tomcat1
   
cp /usr/local/tomcat1 /usr/local/tomcat2 -r 
   
#别离修正tomcat1和tomcat2 端口,这儿有三个端口需求修正,别离如下: 
   
shutdown 端口:8005 首要担任发动封闭. 
   
ajp端口:8009 首要担任经过ajp均衡(常用于apache和tomcat整合) 
   
http端口:8080 能够经过web页面直接拜访(nginx+tomcata整合) 
   
#注* 假如tomcat1三个端口别离为:8005 8009 8080 ,那么tomcat2端口在此基础上都+1,即为:8006 8010 8081 
   
#一台服务器上,端口不能重复,不然会报错。 
   
#修正完端口后,然后发动两个tomcat,发动指令为: 
   
#怎样提示没有这个文件或许权限缺乏,需求tomcat 的bin目录对sh文件赋予履行权限:chmod o+x  *.sh 
   
/usr/local/tomcat1/bin/startup.sh 
   
/usr/local/tomcat2/bin/startup.sh 
   
#发动后,运用netstat -tnl 能够看到6个端口,即代表tomcat1 tomcat2成功发动。你能够运用http://ip:8080 http://ip:8081拜访tomcat默许页面。


#假如需求修正tomcat发布目录为自己拟定的目录,需求做如下调整,创立两个发布目录:

仿制代码 代码如下:

mkdir -p /usr/webapps/{www1,www2}

修正vi /usr/local/tomcat1/conf/server.xml 在最终</Host>前一行加下内容:

仿制代码 代码如下:

< Context path="" docBase="/usr/webapps/www1" reloadable="false"/>

2.修正vi /usr/local/tomcat2/conf/server.xml 在最终</Host>前一行加下内容:

仿制代码 代码如下:

< Context path="" docBase="/usr/webapps/www2" reloadable="false"/>

3.tomcat1发布目录内容:

<html> 
<body> 
<h1>TOMCAT_1 JSP Test Page</h1> 
<%=new java.util.Date()%> 
</body> 
</html>

 4.tomcat2发布目录内容:

<html> 
<body> 
<h1>TOMCAT_2 JSP Test Page</h1> 
<%=new java.util.Date()%> 
</body> 
</html>

然后拜访http://ip:8080、8081检查测验内容。

5、Nginx+tomcat整合:

整合首要是修正nginx.conf装备,给一个完好的nginx.conf线上装备,部分参数能够自己依据实践需求修正:

user www www; 
worker_processes 8; 
pid /usr/local/nginx/nginx.pid; 
worker_rlimit_nofile 102400; 
events 
{ 
use epoll; 
worker_connections 102400; 
} 
http 
{ 
 include    mime.types; 
 default_type application/octet-stream; 
 fastcgi_intercept_errors on; 
 charset utf-8; 
 server_names_hash_bucket_size 128; 
 client_header_buffer_size 4k; 
 large_client_header_buffers 4 32k; 
 client_max_body_size 300m; 
 sendfile on; 
 tcp_nopush   on; 
    
 keepalive_timeout 60; 
    
 tcp_nodelay on; 
 client_body_buffer_size 512k; 
   
 proxy_connect_timeout  5; 
 proxy_read_timeout    60; 
 proxy_send_timeout    5; 
 proxy_buffer_size    16k; 
 proxy_buffers      4 64k; 
 proxy_busy_buffers_size 128k; 
 proxy_temp_file_write_size 128k; 
    
 gzip on; 
 gzip_min_length 1k; 
 gzip_buffers   4 16k; 
 gzip_http_version 1.1; 
 gzip_comp_level 2; 
 gzip_types    text/plain application/x-javascript text/css application/xml; 
 gzip_vary on; 
    
###2012-12-19 change nginx logs 
log_format main '$http_x_forwarded_for - $remote_user [$time_local] "$request" '
       '$status $body_bytes_sent "$http_referer" '
       '"$http_user_agent" $request_time $remote_addr'; 
          
upstream web_app { 
 server 127.0.0.1:8080 weight=1 max_fails=2 fail_timeout=30s; 
 server 127.0.0.1:8081 weight=1 max_fails=2 fail_timeout=30s; 
} 
   
####chinaapp.sinaapp.com 
server { 
  listen 80; 
  server_name chinaapp.sinaapp.com; 
  index index.jsp index.html index.htm; 
  #发布目录/data/www 
  root /data/www; 
     
  location / 
  { 
  proxy_next_upstream http_502 http_504 error timeout invalid_header; 
  proxy_set_header Host $host; 
  proxy_set_header X-Real-IP $remote_addr; 
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
  proxy_pass http://web_app; 
  expires   3d; 
  } 
    
 } 
   
}

#注* server段 proxy_pass界说的web_app需求跟upstream 里边界说的web_app共同,不然server找不到均衡。

#如上装备,nginx+tomcat反向署理负载均衡装备结束,假如要做动态别离,只需求在nginx增加如下装备就OK了。

#装备Nginx动态别离 
   
location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ 
   
{ 
   
root /data/www; 
   
#expires界说用户阅读器缓存的时刻为3天,假如静态页面不常更新,能够设置更长,这样能够节约带宽和缓解服务器的压力 
   
expires   3d; 
   
}



188bet uedbet 威廉希尔 明升 bwin 明升88 bodog bwin 明升m88.com 18luck 188bet unibet unibet Ladbrokes Ladbrokes casino m88明升 明升 明升 m88.com 188bet m88 明陞 uedbet赫塔菲官网 365bet官网 m88 help
微信扫码登陆

翻开 微信
扫一扫登录