欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
提高 Varnish 的效率:去除不需要的 Cookies 和 QueryStrings

提高 Varnish 的效率:去除不需要的 Cookies 和 QueryStrings

在使用了 Varnish 后發(fā)現,Cache hits for pass 的數量比較高,好像是不能緩存的對象請求太多,應該是應用發(fā)送了 Set-Cookie 的 HTTP Header,或者使用某些統計代碼使用了 Cookie,從而瀏覽器發(fā)送 Cookie 的 Header,導致 Varnish 認為這些請求不應該緩存。如果確實(shí)不需要 Cookies 就能正確運行的應用頁(yè)面,可以修改 VCL :

sub vcl_recv {
    # 去除 Cookies (靜態(tài)文件通常不需要處理 Cookies)
    if (req.url ~ "^/[^?]+\.(jpeg|jpg|png|gif|ico|js|css|txt|zip|html|htm)(\?.*|)$") {
       unset req.http.cookie;
    }
    # 去除首頁(yè)的 Cookies
    if (req.url ~ "^/$") {
       unset req.http.cookie;
    }
}

sub vcl_fetch {
        if (req.url ~ "^/$") {
                unset beresp.http.set-cookie;
        }
}

另一個(gè)可能的原因是,由于不同的瀏覽器發(fā)送的 Accept-Encoding 不同,需要緩存不同版本的內容,造成不必要的緩存空間,可以設置規范一下:

sub vcl_recv {
    # 修改 Accept-Encoding 只保留必要的內容
    if (req.http.Accept-Encoding) {
        if (req.url ~ "\.(jpg|png|gif|jpeg)(\?.*|)$") {
            remove req.http.Accept-Encoding;
        } elsif (req.http.Accept-Encoding ~ "gzip") {
            set req.http.Accept-Encoding = "gzip";
        } elsif (req.http.Accept-Encoding ~ "deflate") {
            set req.http.Accept-Encoding = "deflate";
        } else {
            remove req.http.Accept-Encoding;
        }
    }
}

另一個(gè)不容忽視的是 URL 里的 Query Stings,就是問(wèn)號后的查詢(xún)字符串。如果對于每個(gè) URL 都保留一份緩存內容,可能會(huì )造成緩存重復,浪費空間,一些 URL 可能根本不需要處理 Query String,比如圖片,CSS 等,可以在 Varnish 的 VCL 里去掉 Request URL 里問(wèn)號后面的部分:

sub vcl_recv {
    # 去除查詢(xún)字符串
    if (req.url ~ "^/[^?]+\.(jpeg|jpg|png|gif|ico|js|css|txt|zip|html|htm)(\?.*|)$") {
       set req.url = regsub(req.url, "\?.*$", "");
    }
}

把這幾個(gè)部分寫(xiě)在一起(不想看上面內容卻又想優(yōu)化一下 Varnish 的直接看這個(gè)):

sub vcl_recv {
    # 修改 Accept-Encoding 只保留必要的內容
    if (req.http.Accept-Encoding) {
        if (req.url ~ "\.(jpg|png|gif|jpeg)(\?.*|)$") {
            remove req.http.Accept-Encoding;
        } elsif (req.http.Accept-Encoding ~ "gzip") {
            set req.http.Accept-Encoding = "gzip";
        } elsif (req.http.Accept-Encoding ~ "deflate") {
            set req.http.Accept-Encoding = "deflate";
        } else {
            remove req.http.Accept-Encoding;
        }
    }


    # 去除 Cookies 和查詢(xún)字符串 (靜態(tài)文件通常不需要處理 Cookies 和 QueryStrings)
    if (req.url ~ "^/[^?]+\.(jpeg|jpg|png|gif|ico|js|css|txt|zip|html|htm)(\?.*|)$") {
       unset req.http.cookie;
       set req.url = regsub(req.url, "\?.*$", "");
    }


    # 去除首頁(yè)的 Cookies
    if (req.url ~ "^/$") {
       unset req.http.cookie;
    }
}

sub vcl_fetch {
        if (req.url ~ "^/$") {
                unset beresp.http.set-cookie;
        }
}

這里只匹配了首頁(yè)和常見(jiàn)的靜態(tài)文件,如果要匹配其它的 URL,修改一下就可以了。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
小白學(xué) Python 爬蟲(chóng)(17):Requests 基礎使用
python3自動(dòng)獲取網(wǎng)站的cookie
Python爬蟲(chóng)利器一之Requests庫的用法 | 靜覓
一篇文章帶你搞懂強大的爬蟲(chóng)模塊requests中的常用函數方法
requests庫快速入門(mén)(參照官方文檔翻譯整理)
Python Requests快速入門(mén)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久