2012-07-14 127 views
0

我實現了在TCP端口上偵聽的memcache服務器。後來我發現UNIX域套接字比TCP套接字更快。在使用TCP時,我的活動連接數量變得非常高。然後我開始使用帶有UNIX域套接字的memcache,並且性能得到了改善。Memcache套接字/端口

現在我必須使用多個Web服務器,我很困惑如何在UNIX域套接字中使用memcache。有一件事我必須記住我的web服務器必須使用單個memcache服務器。

請建議如何使用UNIX域套接字合併內存緩存。或者如果我使用TCP,那麼我該如何提高性能。任何其他優化解決方案都非常受歡迎

+2

你是什麼意思「與端口」和「與套接字」? memcache始終監聽(TCP或UDP)端口,客戶端使用套接字連接到該端口。也許如果你顯示一些代碼,你的意思就會變得清晰。 – Celada 2012-07-14 13:28:10

+0

Memcache->連接(); Memcache-> connect('unix:///tmp/memcached.sock',0); 後來一個比較快。 – 2012-07-23 04:42:59

+0

好吧,這聽起來像你實際上是在談論使用UNIX域套接字與TCP套接字。你不應該稱之爲「插座」和「端口」,這是沒有意義的。我會根據我的意思編輯你的問題。 – Celada 2012-07-24 01:41:27

回答

0

如果通過「我的Web服務器必須使用單個Memcache服務器」,則表示您的Web服務器必須連接到遠程中央Memcache服務器,那麼當然TCP是您自UNIX domain sockets are only local以來的唯一選項。

如果您的Web服務器僅與本地計算機上運行的Memcache服務器建立連接,則UNIX域套接字將正常工作,如果速度更快,您應該使用它們。