莊周夢蝶

          生活、程序、未來
             :: 首頁 ::  ::  :: 聚合  :: 管理

          Xmemcached 1.2.2發布——支持遍歷所有key

          Posted on 2010-01-12 18:13 dennis 閱讀(4506) 評論(7)  編輯  收藏 所屬分類: javamy open-source
              Java Memcached Client——Xmemcached的新版本1.2.2正式released。這個小版本最主要的改進是允許遍歷所有在memcached中的key,這是通過stats協議實現,具體信息可以看這里

          1.2.2的主要改進如下:

          1、添加一個KeyIterator接口,這個迭代器接口用于遍歷memcached中的所有key。由于是基于stats協議實現的,因此這個迭代過程并非高效,請慎重使用,并且迭代返回的key也并非實時,而是當前快照。KeyIterator目前僅在文本協議下可用,使用例子如下:
          MemcachedClient client=
          KeyIterator it
          =client.getKeyIterator(AddrUtil.getOneAddress("localhost:11211"));
          while(it.hasNext())
          {
             String key
          =it.next();
          }

          2、添加一個新類net.rubyeye.xmemcached.Counter,用于封裝原始的incr/decr方法,提供類似AtomicLong原子類的API方便計數器的使用:
          Counter counter=client.getCounter("counter",0);
          counter.incrementAndGet();
          counter.decrementAndGet();
          counter.addAndGet(
          -10);

          3、修復BUG,如issue 71,issue 72,issue 70 etc.
          4、聲明廢棄 net.rubyeye.xmemcached.buffer.BufferAllocator,現在哪怕你設置了這一屬性也將被忽略,這個類將在以后的某個版本中移除
          5、升級yanf4j到1.1.0

             Wiki用戶指南都已經更新,歡迎使用并反饋任何建議或者bug報告。

          項目主頁:http://code.google.com/p/xmemcached/
          下載地址:http://code.google.com/p/xmemcached/downloads/list


          評論

          # re: Xmemcached 1.2.2發布——支持遍歷所有key[未登錄]  回復  更多評論   

          2010-01-13 10:01 by a
          這么多限制,這個功能還是不要開放出來,導致不兼容性

          # re: Xmemcached 1.2.2發布——支持遍歷所有key[未登錄]  回復  更多評論   

          2010-01-13 13:15 by dennis
          @a
          這個功能適合調試或者后臺管理使用。業務相關邏輯不應當使用。

          # re: Xmemcached 1.2.2發布——支持遍歷所有key  回復  更多評論   

          2010-01-13 13:24 by Kappa
          <?xml version="1.0" encoding="UTF-8"?>
          <beans xmlns="http://www.springframework.org/schema/beans"" target="_new" rel="nofollow">http://www.springframework.org/schema/beans"
          xmlns:p="http://www.springframework.org/schema/p"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
          default-lazy-init="true">
          <bean name="memcachedClientBuilder" class="net.rubyeye.xmemcached.XMemcachedClientBuilder">
          <!-- XMemcachedClientBuilder have two arguments.First is server list,and second is weights array. -->
          <constructor-arg>
          <list>
          <bean class="java.net.InetSocketAddress">
          <constructor-arg value="server-01"/>
          <constructor-arg value="11211"/>
          </bean>
          </list>
          </constructor-arg>
          <property name="commandFactory">
          <bean class="net.rubyeye.xmemcached.command.TextCommandFactory"/>
          </property>
          <property name="sessionLocator">
          <bean class="net.rubyeye.xmemcached.impl.KetamaMemcachedSessionLocator"/>
          </property>
          <property name="transcoder">
          <bean class="net.rubyeye.xmemcached.transcoders.SerializingTranscoder"/>
          </property>
          </bean>
          <!-- Use factory bean to build memcached client -->
          <bean name="memcachedClient" factory-bean="memcachedClientBuilder"
          factory-method="build" destroy-method="shutdown"/>
          </beans>

          1.2.2這樣配spring集成起不來了.

          # re: Xmemcached 1.2.2發布——支持遍歷所有key  回復  更多評論   

          2010-01-14 15:20 by Kappa
          我的錯, 已經沒問題了, sorry.

          # 報告一個bug  回復  更多評論   

          2010-02-02 14:51 by xieke
          Key contains invalid characters: ``KENSORT:select * from kensort where (1=1) order by modifydate asc .null''

          報這個錯,我傳進去的key 絕對沒有 `` '' ,是xmemcached給我加上去的,相同key其他 memcached client都支持。

          # re: Xmemcached 1.2.2發布——支持遍歷所有key[未登錄]  回復  更多評論   

          2010-02-02 15:01 by dennis
          @xieke

          你的key有空格吧,如果在使用文本協議的情況下,key是不允許有空格的,除非使用二進制協議。“相同key其他 memcached client都支持”,我想問下都有哪些client,至少spymemcached是肯定不行的。

          # re: Xmemcached 1.2.2發布——支持遍歷所有key  回復  更多評論   

          2010-02-05 17:01 by rong2111@163.com
          spymemcached支持自定義Log的形式,提供了net.spy.log.LoggerImpl接口
          請問xmemcached是否支持自定義LOG呢?
          望回復,rong2111@163.com,謝謝
          主站蜘蛛池模板: 贵德县| 襄城县| 宝山区| 鄂州市| 济南市| 洱源县| 邢台县| 汕尾市| 通化县| 社旗县| 舟曲县| 西城区| 建宁县| 宁陵县| 平江县| 罗江县| 昂仁县| 道孚县| 民权县| 承德县| 丰宁| 昭苏县| 张家界市| 汉川市| 台湾省| 永州市| 颍上县| 读书| 宜州市| 孟津县| 南和县| 六枝特区| 遵义市| 涿鹿县| 汨罗市| 龙川县| 新津县| 福泉市| 通城县| 盐边县| 伽师县|