nginx tomcat 集羣配置

 Nginx 是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。Nginx、apache是基於http反向代理方式,Nginx不能爲基於TCP協議的應用提供負載均衡。  其特色是佔有內存少,併發能力強,事實上nginx的併發能力確實在同類型的網頁伺服器中表現較好.目前中國大陸使用nginx網站用戶有:新浪、網易、 騰訊,另外知名的微網誌Plurk也使用nginx。javascript

安裝軟件:css

安裝nginx、tomcat等軟件:安裝方式可自行選擇html

確保nginx、tomcat均可成功訪問java

此處使用upstream hash來完成不一樣後端服務器之間的無狀態切換:linux

安裝配置詳見:http://wiki.nginx.org/HttpUpstreamRequestHashModule nginx


tomcat配置:web

爲了使一臺機器同時啓動兩臺tomcat,須要對tomcat配置文件作以下的修改:apache

修改tomcat1 的配置:apache-tomcat-8.0.23/conf/server.xml,修改三處端口,把默認的端口修改成一個新的未使用的端口後端

<!--  修改port端口:18006 倆個tomcat不能重複,隨意設置一個未使用的端口-->  
<Server port="18006" shutdown="SHUTDOWN"> 

<!-- port="18081" tomcat監聽端口,隨意設置一個未使用的端口 -->  
<Connector port="18081" protocol="HTTP/1.1"   
               connectionTimeout="20000"   
               redirectPort="8443" />                
                  
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />  tomcat


nginx配置

nginx 配置文件設置nginx.conf:

如下標紅的爲必須配置的:

在http配置中配置


#Nginx所用用戶和組,window下不指定  
#user  niumd niumd;  
  
#工做的子進程數量(一般等於CPU數量或者2倍於CPU)  
worker_processes  2;  
  
#錯誤日誌存放路徑  
#error_log  logs/error.log;  
#error_log  logs/error.log  notice;  
error_log  logs/error.log  info;  
   
#指定pid存放文件  
pid        logs/nginx.pid;  
   
events {  
     #使用網絡IO模型linux建議epoll,FreeBSD建議採用kqueue,window下不指定。  
     use epoll;  
       
     #容許最大鏈接數  
     worker_connections  2048;  
}  

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"';
     log_format  main  '$remote_addr\t$http_x_forwarded_for\t-\t$remote_user\t$time_iso8601\t$request_method\t"$document_uri"\t"$query_string"\t$server_protocol\t$status\t$body_bytes_sent\t$request_time\t"$http_referer"\t"$http_user_agent"\t$http_Cdn-Src-Ip\t$host\t$hostname\t$server_addr\t-\t-\t-\t-\t-\tV5';

    access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  15;
    concat on;

    #gzip  on;

   upstream   10.27.171.57 {         #兩個tomcat負載均衡配置,部署在同一個機器上不一樣的端口  

       hash   $cookie_jsessionid;  

       server  10.27.171.57:8090;

       server  10.27.171.57:8080;
       hash_again 1; 

   }
    gzip  on;
    gzip_vary on;
    gzip_min_length  1k;
    gzip_buffers     4  8k;
    gzip_comp_level 1;
    gzip_types       text/plain application/x-javascript text/css text/htm application/xml application/javascript text/javascript;
    gzip_http_version 1.1;
    proxy_buffering off;

    server {
        listen       80;  #監聽80端口,默認直接使用ip便可訪問
        #server_name  localhost;
        server_name  10.27.171.57;   #訪問的server名稱

        #charset koi8-r;

        access_log  /opt/rsync_log/access_http.log  main;

        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://10.27.171.57;   #須要訪問的server地址
        }

   }

}

訪問:http://10.27.171.57 

驗證集羣部署是否成功,在這裏停掉tomcat1,而後訪問http://10.27.171.57 

相關文章
相關標籤/搜索