Apache-Traffic-Server

ATS (Apache Traffic Server) 不記憶體

  • October 17, 2015

我正在嘗試讓我的 UWSGI 應用程序的 ATS 記憶體返回,該應用程序目前與 ATS 本身在同一台機器上執行。

我不明白為什麼 ATS 總是將我的請求轉發給 UWSGI 並且不記憶體結果。我在從原始碼編譯的 ubuntu 14.04 上使用 ATS 5.1.1,並遵循此處描述的教程:http: //daemonkeeper.net/735/apache-trafficserver-the-better-web-cache/

使用 curl 發出測試請求,我總是在 Via 標頭中收到這些診斷資訊: uScMsSf pSeN:t cCMi p sS

WHich 可以使用 traffic_via 解碼為:

Proxy request results:
Request headers received from client:               simple request (not conditional)
Result of Traffic Server cache lookup for URL:      miss (a cache "MISS")
Response information received from origin server:   served
Result of document write-to-cache:                  no cache write performed
Proxy operation result:                             served
Error codes (if any):                               no error
Operational results:
Tunnel info:                                        no tunneling
Cache-type and cache-lookup cache result values:    cache / cache miss (url not in cache)
ICP status:                                         no icp
Parent proxy connection status:                     no parent proxy
Origin server connection status:                    connection opened successfully

有人可以幫我理解,為什麼結果沒有被記憶體?

我的 remap.config:

map http://trafficserver_build:8080 http://127.0.0.1:8888

我的記憶體配置:

url_regex=.* revalidate=10m

我的 storage.config(預設提供):

var/trafficserver 256M

日誌請求狀態:

/opt/ts/bin/traffic_logcat -f /opt/ts/var/log/trafficserver/squid.blog


1415307115.252 0 10.0.3.28 TCP_MISS/200 258 HEAD http://127.0.0.1:8888/ - DIRECT/127.0.0.1 text/html
1415307127.721 0 10.0.3.28 TCP_MISS/200 258 HEAD http://127.0.0.1:8888/ - DIRECT/127.0.0.1 text/html
1415307171.141 0 10.0.3.28 TCP_MISS/200 258 HEAD http://127.0.0.1:8888/ - DIRECT/127.0.0.1 text/html
1415307176.480 0 10.0.3.28 TCP_MISS/200 258 HEAD http://127.0.0.1:8888/ - DIRECT/127.0.0.1 text/html

最可能的問題是您的源沒有設置預期的 HTTP 標頭以使響應可記憶體。相關的 Traffic Server 設置是 proxy.config.http.cache.required_headers,預設情況下非常嚴格地要求響應中的 Expires 或 Cache-Control 標頭。

https://trafficserver.readthedocs.org/en/latest/reference/configuration/records.config.en.html#proxy-config-http-cache-required-headers

您還可以通過以下方式強制內容進入記憶體:

因此,例如,您可以將 cache.config 設置為包含

dest_domain=mysite.com ttl-in-cache=10m

結合required_headersof ,即使您不控制原點0,這也將起作用

引用自:https://serverfault.com/questions/642581