Cache
總是返回即時響應的記憶體?
我有一個 Web 服務,儘管已盡我所能進行調整,但仍需要一段時間才能建立響應。
我想要的是位於服務前面的某種記憶體,它總是會從服務返回最後一個已知值,但同時將請求傳遞回服務以建構下一個最新響應要求。
我知道這對數據的新鮮度造成的限制,但你可以假設我很樂意接受這一點。
我目前使用的技術是通過 nginx 的 python uwsgi,但這並不限制您可能建議的任何解決方案。
科爾
假設您想要一個反向代理,您可以在聖模式下使用 Varnish 或帶有 stale-if-error 指令的 squid。
如果您想要應用內記憶體,例如使用 memcached,請不要依賴儲存過期機制 - 使用記憶體對象儲存過期
array(cached_object=>object, expiry=>timestamp)
並在遇到過時記憶體時做出反應:將過期時間增加到現在 + 一點時間(以防止狗堆 -多個程序並行重新生成記憶體),使用陳舊記憶體,初始化更新。