我們正在使用memcache php客戶端在我們的php應用程序中實現memcached。我們託管在當前使用7臺前端服務器的AWS環境中,以訪問僅一個數據庫。 當然,我們想共享所有服務器之間的緩存。 我們是否應該在所有前端服務器上安裝memcached,並將它們添加到memcached池(callind addserver(xx.xx.xxx.xx)),或者我們應該有專用機器作爲「memcached服務器」?memcached在aws環境中的最佳實踐?
1
A
回答
1
您應該與ElastiCache羣集使用Memcached引擎與形成羣集的專用節點/服務器。
請注意,在Memcached中,節點彼此不知曉,但Memcached Client處理集羣中的數據分佈和負載平衡。因此,您的前端服務器將固有地將共享 Memcached羣集,而不用擔心哪個節點當前正在保存數據。
在這裏做最重要的事情是利用自動發現通過ElastiCache在AWS部署在您的應用程序並不需要手動連接到單獨的緩存節點提供功能;相反,您的應用程序連接到配置終結點的。應用程序/前端服務器不需要知道羣集中的節點數量,並且可以根據應用程序的吞吐量和負載來添加或刪除任意數量的節點。
有關自動發現功能的更多細節可以在here找到。
它確實幫助我們在生產部署中將我們的Memcached羣集無縫地從2個節點擴展到16個節點,而無需重新啓動任何應用程序服務器。
1
我會去ElastiCache實例運行memcahced引擎(如果你想堅持memcahced)。
我們在生產中使用過這種設置,並且比單獨安裝更容易維護。另外,您不必處理不一致性問題。
+0
感謝您的回答!我們正在使用ElastiCache!到現在爲止還挺好! :) –
相關問題
- 1. Visual Studio環境最佳實踐?
- 2. iOS-> AWS最佳實踐
- 3. AWS中的雲形成最佳實踐
- 4. 在分佈式環境中使用RDLC的最佳實踐
- 5. 最佳實踐在多線程環境中調用
- 6. 在開發環境中使用Nuget - 最佳實踐/如何
- 7. for循環最佳實踐
- 8. 開發環境中的服務人員最佳實踐?
- 9. PHP MVC環境中的登錄/授權最佳實踐
- 10. prod環境中的Web分析器工具欄,最佳實踐?
- 11. Java - 記錄多節點環境中的最佳實踐
- 12. 在團隊環境中保持最新的Azure SDK的最佳實踐
- 13. 最佳實踐來驗證兩臺機器在M2M環境
- 14. 保護AWS Elasticsearch最佳實踐
- 15. AWS RDS連接最佳實踐
- 16. 基於環境分配jsCodeLocation的最佳實踐
- 17. 環境變量管理的最佳實踐
- 18. 獲得Lavavel 4.2環境的最佳實踐
- 19. 開發環境和API開發的最佳實踐?
- 20. 最佳實踐在IPython中
- 21. 最佳實踐
- 22. 最佳實踐
- 23. 最佳實踐
- 24. 最佳實踐:
- 25. 最佳實踐
- 26. 最佳實踐
- 27. 最佳實踐
- 28. 最佳實踐
- 29. 最佳實踐
- 30. 最佳實踐
謝謝Ankur!我們已經在做! ;) –