集中快取影像

集中快取影像

應用:透過裁剪/調整大小/壓縮主圖像來動態提供響應式和最佳化的圖像

電流負載:每分鐘 10k 請求,~60MBps 流量。

目前配置:NginxPlus LB 位於頂部。具有 nginx->tomcat 的多個應用程式伺服器。在每個應用程式伺服器上,圖像都快取在 nginx 中

目前的問題

  • 快取命中率較差,因為快取是分散的,同一請求命中同一伺服器的機率較低。
  • 重複緩存,儘管這是可以容忍的
  • 快取清除很麻煩。由於快取可能存在於多個伺服器上,為了清除快取,需要從所有應用程式伺服器中清除它

潛在的解決方案

  • Nginx 負載平衡器一致性哈希。這種方式的問題是可能會造成流量分佈不均勻

  • 引入少量 nginx 伺服器的中間層:可以在 LB 和應用程式伺服器之間引入專用的 nginx 快取層。但假設我在這一層保留 3 台伺服器,它仍然存在相同的重複快取和清除問題,儘管程度較低。

  • 在單一 nginx 的情況下,磁碟 I/O 可能會出現問題

有人有解決這個用例的經驗嗎?不是用nginx。請隨意分享您的想法。

相關內容