我剛剛在MySQL服務器上安裝了yum install memcached
。但後來作爲service memcached status
是Running..
,做什麼更多,因爲我不認爲沒有什麼發生在性能。我想我仍然需要配置MySQL來與Memcached配合使用。MySQL服務器上的Memcached?
- MySQL需要什麼配置才能與Memcached交流? (怎麼辦?)
- 甚至還需要從Web Server端配置嗎?
請幫我卡住了。
我剛剛在MySQL服務器上安裝了yum install memcached
。但後來作爲service memcached status
是Running..
,做什麼更多,因爲我不認爲沒有什麼發生在性能。我想我仍然需要配置MySQL來與Memcached配合使用。MySQL服務器上的Memcached?
請幫我卡住了。
Memcached是不一個MySQL的性能插件 - 這是常用的一種寫不過還是回寫caching系統 - 通常,你需要存儲常用的鍵/值對沒有擊中你的數據庫,除非他們改變 - 從而減少數據庫的負載。
訪問Memcached的網站提供有用的信息:
免費&開源的,高性能的,分佈式的內存對象緩存系統,通用的性質,但打算用於通過減輕數據庫加速動態Web應用程序加載。
Memcached是內存中的鍵值存儲,用於從數據庫調用,API調用或頁面呈現結果中爲任意數據(字符串,對象)創建小塊。
超簡單的僞代碼示例:
Read:
if data in memcache {
// Retrieve and use
} else {
// Pull from DB, use and write to memcache
}
或者,在這裏,Memcached的描述緩存結果一個簡單的例子:
Cache Results:
function get_foo(foo_id)
foo = memcached_get("foo:" . foo_id)
return foo if defined foo
foo = fetch_foo_from_database(foo_id)
memcached_set("foo:" . foo_id, foo)
return foo
end
,除非你寫它沒有做任何事情你的軟件/代碼庫來使用它(通常,你寫你的數據庫函數來檢查緩存之前打你的數據庫)。有必要閱讀Memcached Story of caching以瞭解基本的用例場景。
從歷史上看,有些人已經將其與使用MySQL中的HEAP或內存表進行比較,但它不相同,可以分佈在羣集中的許多計算機上和/或通過網絡提供可用/未分配內存的網絡中 - 即使在一臺服務器上。
如果你想了解它的價值,那麼看看沒有比使用它的公司列表更多。
您是否在尋找this?
Mysql5.6現在支持memcache集成版本插件。 如果在這種情況下,您不需要安裝另一個memcached服務器。 只需安裝mysql 5.6。和memcached插件。
然後..你可以在那個頁面看到... 你可以發送memacached命令到memcached服務器和memcached插件自動寫入你想要的備份表。
我認爲應該有更多改進的一件事是表字段類型。 只能使用varchar/text/blob類型(要與memcached服務器交互的備份表字段...)。
PS)
聽說memcached的插件DML吞吐量是驚人的。 但是當我嘗試時,我只有?得到了30%的改善......
「什麼都沒有發生」......你預計會發生什麼? – Hamish 2013-03-22 03:10:23
那麼memcached是什麼? – 2013-03-22 03:10:35
這是一個內存中緩存。除非您的軟件配置爲使用它,否則它不會執行任何操作。 – duskwuff 2013-03-22 03:11:29