簡體   English   中英

Amazon EC2中的Memcached延遲

[英]Memcached Latency in Amazon EC2

我打算僅將Amazon EC2主機用於MemCache。我的Web應用程序將駐留在共享托管服務器上,並將與Ec2通信以查詢Memcache。 此設置的性能如何。

問候,穆吉爾。

不想批評您對體系結構的選擇,但這聽起來像是您擺在優先位置。 Memcache不需要巨大的盒子就可以運行; 它只需要您願意提供的內存就可以了。 它的好處是它在向/從其推入/拉出信息時所提供的速度。 將MC盒放置在內部網絡(無論是否為EC2)之外,基本上會破壞使用MC盒的效率。 假設您在一個數據庫請求上節省了100毫秒,但到EC2的延遲為50毫秒。 您仍然浪費了本來可以利用的49毫秒。

共享主機(對於很多大型應用程序)絕對是垃圾。 如果您有一個足夠大的項目來需要您的CACHING服務使用EC2盒子的功率,那么您肯定做錯了。 這是我的建議:將您的應用程序移至EC2,並將Memcached實例托管在同一框中。 開銷並不可怕,如果您打算擴展緩存,只需啟動另一個框並將您的應用程序指向 MC實例即可。

另一種選擇是使用價格較低的VPS主機,例如LinodeSlicehost 兩者在社區中都享有很高的聲譽。 如果我沒記錯的話,Foursquare的某些部分甚至都由Slicehost托管。 這些都是非常便宜的VPS解決方案(與許多共享解決方案相比;使用MediaTemple之類的工具逐點查看它們),並且可以輕松擴展。 假設您以20美元的MC實例Linode盒子開始。 因為您不在EC2上,所以每月可以節省大約50美元。 如果您將托管轉移到另一個每月$ 20的Linode,則您可能要支付相同的費用(如果您使用共享托管,則可能要多一些)。 另外,如果將Linodes放在同一數據中心,則Web應用程序和緩存之間的延遲幾乎沒有。

假設您要增強MC盒的性能。 只需啟動另一個運行MC的框並刪除舊的框即可。 您可以關閉一個並重新設置它的大小,但是這樣會導致宕機(但這仍然是一種選擇)。

希望這可以幫助!

馬特

聽起來這不是一個好主意,您的Memcached調用將通過Internet傳輸(與當您將ec2用於Web應用程序相反,那時您的Memcached調用僅在亞馬遜數據中心內,而且速度非常快(甚至在同一台機器))。

如果要獲得EC2實例,則應在EC2上運行Web應用程序,並在其中添加一些內存緩存(如果需要更高的性能)。

暫無
暫無

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

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