memcached 与 mysql_memcached 和 MySQL 的 query ?
cache 相比,有什么優缺點?
把 memcached 引入應用中,還是需要不少工作量的。MySQL 有個使用方便的
query cache,可以自動地緩存 SQL 查詢的結果,被緩存的 SQL 查詢可以被反復
地快速執行。Memcached 與之相比,怎么樣呢?MySQL 的 query cache 是集中
式的,連接到該 query cache 的 MySQL 服務器都會受益。
當您修改表時,MySQL 的 query cache 會立刻被刷新(flush)。存儲
一個 memcached item 只需要很少的時間,但是當寫操作很頻繁時,MySQL
的 query cache 會經常讓所有緩存數據都失效。
在多核 CPU 上,MySQL 的 query cache 會遇到擴展問題(scalability
issues)。在多核 CPU 上,query cache 會增加一個全局鎖(global lock), 由
于需要刷新更多的緩存數據,速度會變得更慢。
在 MySQL 的 query cache 中,我們是不能存儲任意的數據的(只能是
SQL 查詢結果)。而利用 memcached,我們可以搭建出各種高效的緩存。比
如,可以執行多個獨立的查詢,構建出一個用戶對象(user object),然后將
用戶對象緩存到 memcached 中。而 query cache 是 SQL 語句級別的,不可能
做到這一點。在小的網站中,query cache 會有所幫助,但隨著網站規模的增加,
query cache 的弊將大于利。
query cache能夠利用的內存容量受到MySQL服務器空閑內存空間的限
制。給數據庫服務器增加更多的內存來緩存數據,固然是很好的。但是,有了
memcached,只要您有空閑的內存,都可以用來增加 memcached 集群的規
模,然后您就可以緩存更多的數據。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的memcached 与 mysql_memcached 和 MySQL 的 query ?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python爬虫技术路线_爬虫学习——中
- 下一篇: mysql left/right joi