簡體   English   中英

在AWS環境中使用Memcached,最佳做法?

[英]memcached in a aws environment, best practice?

我們即將使用memcache php客戶端在php應用程序中實現memcached。 我們托管在當前使用7台前端服務器訪問一個數據庫的AWS環境中。 當然,我們希望在所有服務器之間共享緩存。 我們應該在所有前端服務器中安裝memcached並將其添加到memcached池中(callind addserver(xx.xx.xxx.xx)),還是應該將專用計算機用作“ memcached服務器”?

我將使用一個運行memcahced引擎的ElastiCache實例(如果您想堅持使用memcahced的話)。

我們已經在生產中使用了此設置,它比許多單獨的安裝要容易得多。 另外,您不必處理不一致的問題。

您應該使用帶有Memcached引擎的ElastiCache群集, 群集具有專用的節點/服務器。
請注意,在Memcached中,節點之間彼此不了解,但是Memcached客戶端處理群集中的數據分發和負載平衡。 因此,您的前端服務器將固有地共享 Memcached群集,而不必擔心當前哪個節點正在保存數據。

此處要做的重要事情是在AWS部署中利用ElastiCache提供的自動發現功能,其中您的應用程序無需手動連接到單個緩存節點。 而是,您的應用程序連接到配置終結點 應用程序/前端服務器不需要知道群集中的節點數,並且可以根據應用程序的吞吐量和負載來添加或刪除任意數量的節點。
可以在此處找到有關自動發現功能的更多詳細信息。

它確實對我們的生產部署有所幫助,在該部署中,無需重新啟動任何應用程序服務器,即可將Memcached集群從2個節點無縫地水平擴展到16個節點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM