中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Nginx中怎么配置uwsgi服務做緩存

發布時間:2021-08-11 15:17:16 來源:億速云 閱讀:183 作者:Leah 欄目:服務器

今天就跟大家聊聊有關Nginx中怎么配置uwsgi服務做緩存,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

緩存為什么設置在nginx層

設置緩存是必要的,這里就說說為什么將一些請求的緩存設置在nginx層,而不是服務應用層。理由如下:

一般來說,nginx作為代理服務器的角色,把緩存設置在nginx中,在***緩存的情況下,可以節約一次請求轉發的時間。

nginx本身使用C語言實現,比一般的語言尤其是動態語言(python等)的性能要高。因此nginx讀取緩存的速度要比后端應用讀取的速度快。

歷史項目中沒有引入緩存,在nginx中加緩存配置比寫應用代碼來得快。

當然, 需要由應用鑒定用戶權限的接口并不適合把緩存設置在nginx層

配置方法

nginx可以代理的服務協議有多種(比如 http, uwsgi, fastcgi), 這里以uwsgi協議的配置作為例子,其他協議的基本是把配置指令中  cache前面的 uwsgi替換為協議對應的文字即可(比如 http 對應 proxy, fastcgi 對應  fastcgi)。這里先上一個基本的配置文件,然后對關鍵的配置指令逐一講述它的配置方法及作用。

Nginx中怎么配置uwsgi服務做緩存

Nginx中怎么配置uwsgi服務做緩存

以上配置文件中,有cache字樣的都是與緩存相關的配置指令。它們的作用及配置方法如下:

1.uwsgi_cache_path,配置緩存內容存放的位置、命名以及目錄的分配方式。 /tmp/nginx是緩存文件存放的位置;  keys_zone對應的值是緩存空間的名字及大小,此處名字是 myapp, 大小是128M;  levels參數是設置緩存文件所存放的子目錄,這里1:2的意思是取緩存key(下文將要講到的  uwsgi_cache_key)的MD5值倒數***個字母為1級目錄,倒數第二第三個字母為二級目錄,在上述配置中key的MD5值為  4897858cede04cdd6676d87fd9e9163e的緩存會落在  /tmp/nginx/e/63目錄上;inactive參數是指多長時間不被***時,該緩存內容會被刪除,這里是24小時沒有***則刪除。除了這里提及的參數外,還有其他可選參數,見官方文檔  。

2.add_header Nginx-Cache  "$upstream_cache_status",不建議在生產環境中加入這一行配置,該配置是設置一個響應頭標志緩存***狀態,用于調試。

3.uwsgi_cache_valid 200 36h,該指令配置緩存哪些狀態碼的請求及緩存時間。這里僅當響應狀態碼為200時進行緩存,  緩存36小時。

4.uwsgi_cache_key  $request_method_$request_uri$args,設置緩存的key,這里設置為請求方法+請求uri+參數,可以根據需要使用nginx提供的其他變量。

5.uwsgi_cache_use_stale timeout http_500  http_503,該指令用于配置后端應用出現哪種情況時,可以使用過期的緩存內容。

6.uwsgi_cache myapp,設置使用的緩存空間名字,與 uwsgi_cache_path中的keyszone相對應。該指令支持的上下文有 http、 server和 location, 寫在 location中可以為不同的接口配置不同的空間。

注意事項

說了基本配置,接著說一些值得注意的地方

uwsgi_cache_key的設置key可以使用nginx中的變量滿足各種復雜情況,但是建議不要設置得過于復雜,滿足業務需求即可,因為越復雜***率越低。如果加入了用戶的cookie作為key,就是基于用戶的緩存,只有同一個用戶再次發起相同請求時才會***,***率很低。

uwsgi_cache_valid的設置這個指令一定要配置合理,否則可能會緩存400等響應內容。除了200狀態碼之外,也可以根據需要為其他狀態碼的響應進行緩存,但是緩存時間應該短一點。比如為302的響應內容緩存10s。

看完上述內容,你們對Nginx中怎么配置uwsgi服務做緩存有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

琼中| 仙居县| 南陵县| 寻乌县| 汾阳市| 克东县| 德江县| 通榆县| 克什克腾旗| 隆安县| 阳曲县| 衢州市| 天气| 海原县| 石泉县| 陵川县| 许昌市| 云梦县| 内江市| 治县。| 舞阳县| 青州市| 营山县| 醴陵市| 南宫市| 深水埗区| 略阳县| 富顺县| 鲜城| 福鼎市| 承德市| 麻江县| 名山县| 西青区| 伊川县| 永吉县| 新乐市| 东港市| 方城县| 深水埗区| 敦化市|