<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    java技術研究

    統計

    留言簿(3)

    閱讀排行榜

    評論排行榜

    搭建Nginx+Java環境(轉)

    《高性能Linux服務器構建實戰:運維監控、性能調優與集群應用》第1章輕量級HTTP服務器Nginx,本章主要介紹了對高性能HTTP服務器Nginx的安裝、配置、管理和使用,以及Nginx在性能優化方面的一些經驗和技巧,并通過實例分別演示了Nginx與PHP整合,Nginx和Java、Perl整合的過程。本節為大家介紹搭建Nginx+Java環境。

    AD:

      1.8.4 搭建Nginx+Java環境

      Apache對Java的支持很靈活,它們的結合度也很高,例如Apache+Tomcat和Apache+resin等都可以實現對Java應用的支持。Apache一般采用一個內置模塊來和Java應用服務器打交道。與Apache相比,Nginx在配合Java應用服務器方面,耦合度很低,它只能通過自身的反向代理功能來實現與Java應用服務器的支持。但這恰恰是Nginx的一個優點,耦合度的降低,可以使Nginx與Java服務器的相互影響降到最低。

      接下來通過Nginx+Tomcat的實例來講解Nginx對Java的支持。Tomcat在高并發環境下處理動態請求時性能很低,而在處理靜態頁面更加脆弱。雖然Tomcat的最新版本支持epoll,但是通過Nginx來處理靜態頁面要比通過Tomcat處理在性能方面好很多。

      Nginx可以通過以下兩種方式來實現與Tomcat的耦合:

      將靜態頁面請求交給Nginx,動態請求交給后端Tomcat處理。

      將所有請求都交給后端的Tomcat服務器處理,同時利用Nginx自身的負載均衡功能進行多臺Tomcat服務器的負載均衡。

      下面通過兩個配置實例分別講述這兩種實現Nginx與Tomcat耦合的方式。

      1.動態頁面與靜態頁面分離的實例

      這里假定Tomcat服務器的IP地址為192.168.12.130,同時Tomcat服務器開放的服務器端口為8080。Nginx相關配置代碼如下:

      1. server {  
      2.       listen 80;  
      3.       server_name www.ixdba.net;  
      4.       root /web/www/html;  
      5.  
      6. location /img/ {  
      7.       alias /web/www/html/img/;  
      8. }  
      9.  
      10. location ~ (\.jsp)|(\.do)$ {  
      11.      proxy_pass http://192.168.12.130:8080;  
      12.      proxy_redirect off;  
      13.      proxy_set_header Host $host;  
      14.      proxy_set_header X-Real-IP $remote_addr;  
      15.      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
      16.      client_max_body_size 10m;  
      17.      client_body_buffer_size 128k;  
      18.      proxy_connect_timeout 90;  
      19.      proxy_send_timeout 90;  
      20.      proxy_read_timeout 90;  
      21.      proxy_buffer_size 4k;  
      22.      proxy_buffers 4 32k;  
      23.      proxy_busy_buffers_size 64k;  
      24.      proxy_temp_file_write_size 64k;  
      25. }  
      26.  

       

      在這個實例中,首先定義了一個虛擬主機www.ixdba.net,然后通過location指令將/web/www/html/img/目錄下的靜態文件交給Nginx來完成。最后一個location指令將所有以.jsp、.do結尾的文件都交給Tomcat服務器的8080端口來處理,即http://192.168.12.130:8080

      需要特別注意的是,在location指令中使用正則表達式后,proxy_pass后面的代理路徑不能含有地址鏈接,也就是不能寫成http://192.168.12.130:8080/,或者類似http://192.168.12.130:8080/jsp的形式。在location指令不使用正則表達式時,沒有此限制。

      2.多個Tomcat負載均衡的實例

      這里假定有3臺Tomcat服務器,分別開放不同的端口,地址如下:

      1. 192.168.12.131:8000  
      2. 192.168.12.132:8080  
      3. 192.168.12.133:8090 

       

      Nginx的相關配置代碼如下:
      1. upstream mytomcats {  
      2.       server 192.168.12.131:8000;  
      3.       server 192.168.12.132:8080;  
      4.       server 192.168.12.133:8090;  
      5. }  
      6.  
      7. server {  
      8.       listen 80;  
      9.       server_name www.ixdba.net;  
      10.  
      11. location ~* \.(jpg|gif|png|swf|flv|wma|wmv|asf|mp3|mmf|zip|rar)$ {  
      12.        root /web/www/html/;  
      13. }  
      14.  
      15. location / {  
      16.           proxy_pass http://mytomcats;  
      17.           proxy_redirect off;  
      18.           proxy_set_header Host $host;  
      19.           proxy_set_header X-Real-IP $remote_addr;  
      20.           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
      21.           client_max_body_size 10m;  
      22.           client_body_buffer_size 128k;  
      23.           proxy_connect_timeout 90;  
      24.           proxy_send_timeout 90;  
      25.           proxy_read_timeout 90;  
      26.           proxy_buffer_size 4k;  
      27.           proxy_buffers 4 32k;  
      28.           proxy_busy_buffers_size 64k;  
      29.           proxy_temp_file_write_size 64k;  
      30. }  
      31.  

      在這個實例中,先通過upstream定義一個負載均衡組,組名為mytomcats,組的成員就是上面指定的3臺Tomcat服務器;接著通過server指令定義一個www.ixdba.net的虛擬主機;然后通過location指令以正則表達式的方式將指定類型的文件全部交給Nginx去處理;最后將其他所有請求全部交給負載均衡組來處理。

      這里還有一點需要注意,如果在location指令使用正則表達式后再用alias指令,Nginx是不支持的。

      posted on 2012-07-31 08:55 小秦 閱讀(31747) 評論(1)  編輯  收藏

      評論

      # re: 搭建Nginx+Java環境(轉) 2016-08-18 19:07 33

      6  回復  更多評論   


      只有注冊用戶登錄后才能發表評論。


      網站導航:
       
      主站蜘蛛池模板: 免费中文字幕不卡视频| 伊人亚洲综合青草青草久热| 在线免费不卡视频| 亚洲国产亚洲片在线观看播放| 日韩免费人妻AV无码专区蜜桃| 亚洲一区免费观看| 免费毛片毛片网址| 国产片免费在线观看| 国产亚洲精品美女久久久久| 最近免费中文字幕高清大全| 亚洲综合激情六月婷婷在线观看| 最近免费2019中文字幕大全| 亚洲国色天香视频| 免费鲁丝片一级观看| 精品在线视频免费| 亚洲中文字幕久久精品无码喷水 | 国产亚洲精品xxx| 亚洲最大中文字幕无码网站| 国产成人免费片在线视频观看| 久久亚洲精品无码av| 可以免费看的卡一卡二| 中文无码亚洲精品字幕| 亚洲av午夜精品一区二区三区| 国产免费伦精品一区二区三区| 亚洲国产精品成人久久| 一级毛片试看60分钟免费播放| 成年在线网站免费观看无广告| 亚洲AV女人18毛片水真多| 亚洲人成网站观看在线播放| 亚洲av激情无码专区在线播放| 91免费国产自产地址入| 亚洲电影一区二区三区| 国产一卡2卡3卡4卡无卡免费视频 国产一卡二卡3卡四卡免费 | 亚洲欧洲精品在线| 免费观看亚洲人成网站| 免费福利在线视频| 久久99国产亚洲高清观看首页 | 免费无遮挡无码视频网站| 国产免费区在线观看十分钟| 亚洲国产精品久久人人爱| 亚洲精品成a人在线观看|