Linux筆記 #09# Tomcat多開以及Nginx負載均衡簡單例子
阿新 • • 發佈:2019-01-27
apach serve span weight 全局環境變量 單例 splay top 技術
索引
- Tomcat怎樣多開。。
- 1、添加環境變量(最基礎、關鍵的步驟!)
- 2、改catalina.sh
- 3、改相關端口
- Nginx負載均衡簡單例子
Tomcat怎樣多開。。
演示一下如何開兩個(開n個也差不了多少):
1、添加環境變量(最基礎、關鍵的步驟!)
首先通過復制弄幾個tomcat出來:
(盡量不影響原有的配置,畢竟實際生產環境並不需要多開)
編輯etc/profile,添加如下幾行,名字可以隨便取,不過之後要對應:
# cat1 CAT1_BASE=/opt/tomcat/cat_7070 CAT1_HOME=/opt/tomcat/cat_7070 TOMCAT1_HOME=/opt/tomcat/cat_7070 export CAT1_BASE CAT1_HOME TOMCAT1_HOME # cat2 CAT2_BASE=/opt/tomcat/cat_9090 CAT2_HOME=/opt/tomcat/cat_9090 TOMCAT2_HOME=/opt/tomcat/cat_9090 export CAT2_BASE CAT2_HOME TOMCAT2_HOME
編輯好後保存並退出,通過source /etc/profile命令讓配置立即生效。
2、改catalina.sh
catalina.sh在bin目錄下,startup.sh等操作都會調用這個腳本。在起始位置添加類似下面的東西(覆蓋全局環境變量):
export CATALINA_BASE=$CAT1_BASE
export CATALINA_HOME=$CAT1_HOME
3、改相關端口
編輯conf/server.xml,反正我是一股腦把裏面的8xxx全改成7xxx(除了8080改成7070外)。。改好後保存退出就可以啟動了。
另外一個cat2也是一樣操作。於是就可以同時開好幾個tomcat啦。。
Nginx負載均衡簡單例子
超級簡單。。
開好多個tomcat後,只需修改一下nginx.conf就行了,如下所示:
user root; worker_processes 4; pid /run/nginx.pid; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## # include /etc/nginx/conf.d/*.conf; # include /etc/nginx/sites-enabled/*; upstream tomcat { server ***.**.**.**:7070 weight=1; server ***.**.**.**:9090 weight=1; } server { location / { proxy_pass http://tomcat; } } } #mail { # # See sample authentication script at: # # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript # # # auth_http localhost/auth.php; # # pop3_capabilities "TOP" "USER"; # # imap_capabilities "IMAP4rev1" "UIDPLUS"; # # server { # listen localhost:110; # protocol pop3; # proxy on; # } # # server { # listen localhost:143; # protocol imap; # proxy on; # } #}nginx.conf
再下一步是reload、測試並觀察請求分發情況。
一種方式是直接看tomcat的日誌,但是有n個的話就很麻煩了。。。
另一種方式是修改nginx的默認日誌輸出(同樣是編輯nginx.conf然後reload):
##
# Logging Settings
##
log_format myformat ‘$upstream_addr - ....‘;
access_log /var/log/nginx/access.log myformat;
error_log /var/log/nginx/error.log;
觀察access日誌:
Linux筆記 #09# Tomcat多開以及Nginx負載均衡簡單例子