歡迎來到 常識詞典網 , 一個專業的常識知識學習網站!
[ Ctrl + D 鍵 ]收藏本站
答案 1:
新浪微博架構師Tim Yang對此有寫過博客:Redis不可能比Memcac-e快很多開發者都認為Redis不可能比Memcac-ed快,Memcac-ed完全基于內存,而Redis具有持久化保存特性,即使是異步的,Redis也不可能比Memcac-ed快。但是測試結果基本是Redis占絕對優勢。一直在思考這個原因,目前想到的原因有這幾方面。Libevent。和Memcac-ed不同,Redis并沒有選擇libevent。Libevent為了迎合通用性造成代碼龐大(目前Redis代碼還不到libevent的1/3)及犧牲了在特定平臺的不少性能。Redis用libevent中兩個文件修改實現了自己的epoll event loop(4)。業界不少開發者也建議Redis使用另外一個libevent高性能替代libev,但是作者還是堅持Redis應該小巧并去依賴的思路。一個印象深刻的細節是編譯Redis之前并不需要執行./configure。
CAS問題。CAS是Memcac-ed中比較方便的一種防止競爭修改資源的方法。CAS實現需要為每個cac-e key設置一個隱藏的cas token,cas相當value版本號,每次set會token需要遞增,因此帶來CPU和內存的雙重開銷,雖然這些開銷很小,但是到單機10G+ cac-e以及QPS上萬之后這些開銷就會給雙方相對帶來一些細微性能差別(5)。
timyang.net/data...答案 2:
最關鍵的還是redis自己實現了一套簡單的網絡庫吧..memcac-ed是被libevent給拖累的.性能上不去是卡在libevent上。cas有影響,但是影響實在有限。答案 3:
個人測試過,單從get性能還是memcac-e最快的,redis的set比memcac-e快,還有那些memcac-e沒有的復雜數據結構類型,這些沒法比較了,所以redis有復雜的應用場景,沒法單純跟memcac-e進行負載方面的比較。答案 4:
這個是我個人的測試結果,可以參考一下 blog.sina.cn/s/blog_4...下一篇:有沒有好點的搜圖網站??類似全景華蓋那種的。 下一篇 【方向鍵 ( → )下一篇】
上一篇:用視高的產品自建-會議服務器,運營中遇到的最大問題是什么? 上一篇 【方向鍵 ( ← )上一篇】
快搜