自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Nginx緩存的缺點(diǎn)和優(yōu)點(diǎn)專家評(píng)價(jià)

開發(fā) 前端
Nginx緩存有很多人不是很了解,那么好我們?cè)谶@里就向大家介紹有關(guān)于Nginx緩存的優(yōu)點(diǎn)和缺點(diǎn),這樣大家就會(huì)一目了然的知道相關(guān)問題了。

Nginx緩存對(duì)于不少人來說都不是很明朗的一個(gè)知識(shí)。那么好我們就借介紹有關(guān)優(yōu)點(diǎn)和缺點(diǎn)的機(jī)會(huì)把大家?guī)нM(jìn)Nginx緩存的世界。希望大家在文中能找到自己相關(guān)的使用方法。

兩種Nginx緩存都有著基本一樣的優(yōu)點(diǎn)和缺點(diǎn):

缺點(diǎn)1:不支持帶參數(shù)的動(dòng)態(tài)鏈接,比如read.php?id=1,因?yàn)镹ginx緩存只保存文件名,所以這個(gè)鏈接只在文件系統(tǒng)下保存為read.php,這樣用戶訪問read.php?id=2時(shí)會(huì)返回不正確的結(jié)果。同時(shí)不支持http://www.sudone.com/這種形式的首頁和二級(jí)目錄http://www.sudone.com/download/,因?yàn)镹ginx緩存非常老實(shí),會(huì)將這樣的請(qǐng)求照鏈接寫入文件系統(tǒng),而這個(gè)鏈接顯然是一個(gè)目錄,所以保存失敗。這些情況都需要寫rewrite才能正確保存。

缺點(diǎn)2:Nginx緩存內(nèi)部沒有緩存過期和清理的任何機(jī)制,這些緩存的文件會(huì)***性地保存在機(jī)器上,如果要緩存的東西非常多,那就會(huì)撐暴整個(gè)硬盤空間。為此可以使用一個(gè)shell腳本定期清理,同時(shí)可以撰寫php等動(dòng)態(tài)程序來做實(shí)時(shí)更新。

缺點(diǎn)3:只能緩存200狀態(tài)碼,因此后端返回301/302/404等狀態(tài)碼都不會(huì)緩存,假如恰好有一個(gè)訪問量很大的偽靜態(tài)鏈接被刪除,那就會(huì)不停穿透導(dǎo)致后端承載不小壓力。

缺點(diǎn)4:Nginx不會(huì)自動(dòng)選擇內(nèi)存或硬盤作為存儲(chǔ)介質(zhì),一切由配置決定,當(dāng)然在當(dāng)前的操作系統(tǒng)里都會(huì)有操作系統(tǒng)級(jí)的文件緩存機(jī)制,所以存在硬盤上也不需要過分擔(dān)心大并發(fā)讀取造成的io性能問題。

Nginx傳統(tǒng)緩存的缺點(diǎn)也是它和squid等緩存軟件的不同之特色,所以也可看作其優(yōu)點(diǎn)。在生產(chǎn)應(yīng)用中它常常用作和squid的搭檔,squid對(duì)于帶?的鏈接往往無法阻擋,而Nginx能將其訪問攔住,例如:http://sudone.com/?和http://sudone.com/在squid上會(huì)被當(dāng)做兩個(gè)鏈接,所以會(huì)造成兩次穿透;而Nginx只會(huì)保存一次,無論鏈接變成http://sudone.com/?1還是http://sudone.com/?123,均不能透過Nginx緩存,從而有效地保護(hù)了后端主機(jī)。

Nginx緩存會(huì)非常老實(shí)地將鏈接形式保存到文件系統(tǒng)中,這樣對(duì)于一個(gè)鏈接,可以很方便地查閱它在緩存機(jī)器上的緩存狀態(tài)和內(nèi)容,也可以很方便地和別的文件管理器如rsync等配合使用,它完完全全就是一個(gè)文件系統(tǒng)結(jié)構(gòu)。

這兩種傳統(tǒng)緩存都可以在linux下將文件保存到/dev/shm里,一般我也是這么做的,這樣可以利用系統(tǒng)內(nèi)存來做緩存,利用內(nèi)存的話,清理過期內(nèi)容速度就會(huì)快得多。使用/dev/shm/時(shí)除了要把tmp目錄也指向到/dev/shm這個(gè)分區(qū)外,如果有大量小文件和目錄,還要修改一下這個(gè)內(nèi)存分區(qū)的inode數(shù)量和***容量:

mount -o size=2500M -o nr_inodes=480000 -o noatime,nodiratime -o remount /dev/shm

上面的命令在一臺(tái)有3G內(nèi)存的機(jī)器上使用,因?yàn)?dev/shm默認(rèn)***內(nèi)存是系統(tǒng)內(nèi)存的一半就是1500M,這條命令將其調(diào)大成2500M,同時(shí)shm系統(tǒng)inode數(shù)量默認(rèn)情況下可能是不夠用的,但有趣的是它可以隨意調(diào)節(jié),這里調(diào)節(jié)為480000保守了點(diǎn),但也基本夠用了。

【編輯推薦】

  1. Nginx緩存如何避免傳統(tǒng)緩存的錯(cuò)誤
  2. Nginx php如何解決502 Bad Gateway錯(cuò)誤
  3. Nginx proxy反向代理的十五大技術(shù)特點(diǎn)
  4. Nginx異步代理四步解決相關(guān)問題
  5. Nginx Web服務(wù)器標(biāo)準(zhǔn)IP解決方案
責(zé)任編輯:張浩 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2022-10-17 06:30:23

PyLint

2010-10-22 10:59:43

SQL Server的

2012-06-07 09:55:19

MPLSWAN

2009-06-16 14:18:54

Hibernate的優(yōu)

2021-03-07 16:45:42

RPAAI機(jī)器人自動(dòng)化

2012-11-29 09:54:53

移動(dòng)網(wǎng)絡(luò)云計(jì)算網(wǎng)絡(luò)優(yōu)化

2010-11-22 14:42:13

MySQL行級(jí)鎖

2009-12-30 14:15:38

PPPoA體系

2015-03-20 16:42:44

開源云計(jì)算開源軟件混合云

2022-01-06 09:41:01

云計(jì)算混合云安全

2023-06-08 15:27:17

CAN網(wǎng)絡(luò)

2011-06-14 14:43:03

灰盒測(cè)試

2022-04-07 12:18:55

物聯(lián)網(wǎng)設(shè)備物聯(lián)網(wǎng)IOT

2011-07-01 15:57:06

Gartner存儲(chǔ)云計(jì)算

2010-08-28 14:53:14

2014-09-25 09:41:07

設(shè)計(jì)師

2022-04-22 14:05:43

數(shù)據(jù)庫MongoDBMySQL

2024-03-08 11:30:38

SaaSIT管理平臺(tái)管理

2022-12-02 00:13:51

2021-07-23 10:11:33

物聯(lián)網(wǎng)IOT
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)