Twemproxy -- 针对MemCached与Redis的代理
Twemproxy -- 針對MemCached與Redis的代理
轉載自:http://www.cnblogs.com/shanyou/archive/2012/12/19/2824837.html
?
Twemproxy是一個代理服務器,可以通過它減少Memcached或Redis服務器所打開的連接數。
?
Twemproxy有何用途呢?它可以:
通過代理的方式減少緩存服務器的連接數
自動在多臺緩存服務器間共享數據
通過不同的策略與散列函數支持一致性散列
通過配置的方式禁用失敗的結點
運行在多個實例上,客戶端可以連接到首個可用的代理服務器
支持請求的流式與批處理,因而能夠降低來回的消耗
?
Redis的創建者Salvatore Sanfilippo(@antirez)撰寫了一篇文章,介紹了如何通過Twemproxy在開啟Redis-cluster特性前就讓Redis集群發揮作用,而在大多數情況下都不會喪失太多的性能:
?
Twemproxy的強大之處在于可以通過配置的方式讓它禁用掉失敗的結點,同時還能在一段時間后進行重試,抑或使用指定的鍵 ->服務器映射。這意味著在將Redis用作數據存儲時,它可以對Redis數據集進行分片(禁用掉結點驅逐);在將Redis用作緩存時,它可以啟用結點驅逐以實現簡單的高可用性。
?
Twemproxy速度很快,真的很快,它幾乎與直接訪問Redis速度一樣快。我敢說在最差的情況下,性能也只不過才損失20%而已。
?
我對性能問題唯一的想法是當在多個實例上使用命令時,我覺得MGET還有改進空間。
?
Twemproxy早在今年初由Twitter開源,它最開始支持Memcached,最近又添加了對Redis的支持。Twitter使用了大量的緩存服務器,每秒會發送300k的tweet;可以看看這篇介紹Real-Time Delivery Architecture At Twitter以了解更多信息。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Twemproxy -- 针对MemCached与Redis的代理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 7之基础 - 强引用、弱引用、
- 下一篇: 通讯录管理系统(C语言)