當來源站點出現問題時如何使使用者的請求暫時可以得到響應_PHP教程

來源:互聯網
上載者:User

當來源站點出現問題時如何使使用者的請求暫時可以得到響應


來源站點出現問題,不能給使用者返回請求的內容的時候,有什麼辦法使使用者仍然取到內容,雖然是到期的內容?
方法1:通過增加ats外掛程式實現:
為了防止來源站點出現問題,如出現逾時的情況,導致資料沒有正常返回,返回錯誤碼如502、504的時候,atsProxy 伺服器會直接返回給使用者502、504,影響用於體驗,ats可通過增加外掛程式功能實現當ats接收到來源站點返回的502、504時如果ats本地存在到期的快取資料,則把到期的快取資料暫時返回給使用者,在使用者看來是200的成功訪問。

方法2:通過ats內建的處理機制:
如果來源站點不能給ats返回資料,如來源站點服務停掉了,機器宕掉了,則此時如果ats中有緩衝則會返回TCP_REFRESH_FAIL_HIT/200 ,之後再次訪問一直為TCP_HIT/200 ,直到proxy.config.http.cache.max_stale_age這個緩衝值到了,以後再次請求返回TCP_REFRESH_FAIL_HIT/502

records.config中的配置項:
proxy.config.http.cache.max_stale_age INT 604800
上面配置項的含義:在不能緩衝該對象之前,舊對象能夠響應的最大時間(預設一周604800s)。

上述兩種方法達到預期效果的前提是:ats中有緩衝且到期了
==========
在上面方法2的情況下測試:
下面為用戶端的部分回應標頭資訊的區別:
1. 伺服器正常提供服務,正常響應(TCP_HIT/200):
Proxy-Connection: keep-alive
* Connection #0 to host 192.168.10.74 left intact
* Closing connection #0

2. 伺服器stop下再次發送相同請求(TCP_REFRESH_FAIL_HIT/200):
* HTTP/1.1 proxy connection set close!
< Proxy-Connection: close
< Warning: 111 DLC-3.0
* Closing connection #0

3.上面2的基礎上再次發送多條相同請求(TCP_HIT/200):
Proxy-Connection: keep-alive
< Warning: 111 DLC-3.0
* Connection #0 to host 192.168.10.74 left intact
* Closing connection #0

4.伺服器stop下當配置值604800s到了後,再次發送請求(TCP_REFRESH_FAIL_HIT/502):
Proxy-Connection: Keep-Alive
>
< HTTP/1.1 502 Connection refused
* Connection #0 to host 192.168.10.74 left intact
* Closing connection #0

http://www.bkjia.com/PHPjc/1122650.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1122650.htmlTechArticle當來源站點出現問題時如何使使用者的請求暫時可以得到響應 來源站點出現問題,不能給使用者返回請求的內容的時候,有什麼辦法使使用者仍然取到內容...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.