1.為什么要實(shí)現(xiàn)動(dòng)靜分離
成都創(chuàng)新互聯(lián)公司專注于杜集企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),成都做商城網(wǎng)站。杜集網(wǎng)站建設(shè)公司,為杜集等地區(qū)提供建站服務(wù)。全流程按需定制開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)1)nginx的處理靜態(tài)資源能力超強(qiáng)
主要是nginx處理靜態(tài)頁面的效率遠(yuǎn)高于tomcat的處理能力,如果tomcat的請(qǐng)求量為1000次,則nginx的請(qǐng)求量為6000次,tomcat每秒的吞吐量為0.6M,nginx的每秒吞吐量為3.6M,可以說,nginx處理靜態(tài)資源的能力是tomcat處理能力的6倍,優(yōu)勢(shì)可見一斑。
2)動(dòng)態(tài)資源和靜態(tài)資源分開,使服務(wù)器結(jié)構(gòu)更清晰。
2.動(dòng)靜分離原理
服務(wù)端接收來自客戶端的請(qǐng)求中,有一部分是靜態(tài)資源的請(qǐng)求,例如html,css,js和圖片資源等等,有一部分是動(dòng)態(tài)數(shù)據(jù)的請(qǐng)求。因?yàn)閠omcat處理靜態(tài)資源的速度比較慢,所以我們可以考慮把所有靜態(tài)資源獨(dú)立開來,交給處理靜態(tài)資源更快的服務(wù)器例如nginx處理,而把動(dòng)態(tài)請(qǐng)求交給tomcat處理。
如下圖所示,我們?cè)跈C(jī)器上同時(shí)安裝了nginx和tomcat,把所有的靜態(tài)資源都放置在nginx的webroot目錄下面,把動(dòng)態(tài)請(qǐng)求的程序都放在tomcat的webroot目錄下面,當(dāng)客戶端訪問服務(wù)端的時(shí)候,如果是靜態(tài)資源的請(qǐng)求,就直接到nginx的webroot目錄下面獲取資源,如果是動(dòng)態(tài)資源的請(qǐng)求,nginx利用反向代理的原理,把請(qǐng)求轉(zhuǎn)發(fā)給tomcat進(jìn)行處理,這樣就實(shí)現(xiàn)了動(dòng)靜分離,提高了服務(wù)器處理請(qǐng)求的性能。
3.動(dòng)靜分離的詳細(xì)配置
1)首先熟悉下nginx的重要配置文件nginx.conf
user nginx; worker_processes 1; error_log logs/error.log; pid logs/nginx.pid; events { worker_connections 1024; } 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"'; access_log logs/access.log main; sendfile on; keepalive_timeout 65; #gzip壓縮功能設(shè)置 gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.0; gzip_comp_level 2; gzip_types text/plain application/x-javascripttext/css application/xml; gzip_vary on; server { listen 80; server_name www.test.com; location / { #jsp網(wǎng)站程序根目錄,一般nginx與tomcat在同一個(gè)目錄 root /usr/local/tomcat/webapps/ROOT; index index.html index.jsp index.html; } location ~ .*.jsp$ { index index.jsp; proxy_pass http://127.0.0.1:8080; #來自jsp請(qǐng)求交給tomcat處理 proxy_redirect off; proxy_set_header Host $host; #后端的Web服務(wù)器可以通過X-Forwarded-For獲取用戶真實(shí)IP proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; #允許客戶端請(qǐng)求的大單文件字節(jié)數(shù) client_body_buffer_size 128k; #緩沖區(qū)代理緩沖用戶端請(qǐng)求的大字節(jié)數(shù) proxy_connect_timeout 90; #nginx跟后端服務(wù)器連接超時(shí)時(shí)間(代理連接超時(shí)) proxy_read_timeout 90; #連接成功后,后端服務(wù)器響應(yīng)時(shí)間(代理接收超時(shí)) proxy_buffer_size 4k; #設(shè)置代理服務(wù)器(nginx)保存用戶頭信息的緩沖區(qū)大小 proxy_buffers 6 32k; #proxy_buffers緩沖區(qū),網(wǎng)頁平均在32k以下的話,這樣設(shè)置 proxy_busy_buffers_size 64k;#高負(fù)荷下緩沖大?。╬roxy_buffers*2) proxy_temp_file_write_size 64k; #設(shè)定緩存文件夾大小,大于這個(gè)值,將從upstream服務(wù)器傳 } location ~ .*\.(gif|jpg|png|bmp|swf)$ #由nginx處理靜態(tài)頁面 { expires 30d; #使用expires緩存模塊,緩存到客戶端30天 } location ~ .*\.( jsp|js|css)?$ { expires 1d; } error_page 404 /404.html; #錯(cuò)誤頁面 error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
新聞名稱:nginx實(shí)現(xiàn)tomcat動(dòng)靜分離詳解-創(chuàng)新互聯(lián)
鏈接地址:http://jinyejixie.com/article20/jegco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、關(guān)鍵詞優(yōu)化、網(wǎng)站營銷、外貿(mào)建站、Google、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容