<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

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

    xmemcached發布1.0版本

    Posted on 2009-03-13 22:07 dennis 閱讀(1885) 評論(2)  編輯  收藏 所屬分類: javamy open-source
        xmemcached發布1.0穩定版,下載地址這里
        相比于1.0-beta版本,這個released版本的主要改進如下:
    1、xmemcached跟yanf4j都是默認采用common-logging,你可以使用log4j,也可以默認使用jdk的日志庫。1.0添加了log4j的配置和依賴包。log4j的性能比jdk自帶的日志庫性能好多了。

    2、添加了BufferAllocator接口,用于分配ByteBufferWrapper,ByteBufferWrapper顧名思義就是ByteBuffer的包裝接口,因此BufferAllocator就是ByteBuffer的分配器,有兩個實現:SimpleBufferAllocator,直接調用ByteBuffer.allocate(capacity)方法,不做任何緩存;一個是CachedBufferAllocator,采用ThreadLocal緩存ByteBuffer,避免重復創建,如果你對mina熟悉的話,這個概念沒什么特別的。默認xmemcached采用的是SimpleBufferAllocator,你可以通過XMemcachedClient的構造方法設置想要采用的BufferAllocator:

    public XMemcachedClient(BufferAllocator allocator) throws IOException;
    //其他重載構造函數


        經過測試,采用CachedBufferAllocator并沒有帶來顯著的性能提升,需要更多測試,慎用。

    3、允許設置網絡參數,在多個memcached節點的情況下,強烈推薦將網絡層的讀線程數(處理OP_READ)設置為接近節點數(具體還是要看場景測試,因為讀線程數本質上是啟動了一個線程池來處理讀事件,太大也會影響效率):
        //XMemcachedClient的getDefaultConfiguration靜態方法,獲取默認配置
        public static Configuration getDefaultConfiguration() {
            Configuration configuration 
    = new Configuration();
            configuration.setTcpRecvBufferSize(TCP_RECV_BUFF_SIZE);
            configuration.setSessionReadBufferSize(READ_BUFF_SIZE);
            configuration.setTcpNoDelay(TCP_NO_DELAY);
            configuration.setReadThreadCount(READ_THREAD_COUNT);
            
    return configuration;
        }

        使用方法:
     Configuration conf=XMemcachedClient.getDefaultConfiguration();
      //設置讀線程數為節點數,更多設置方法請參見Configuration類                       
     conf.setReadThreadCount(5);

     XMemcachedClient mc = new XMemcachedClient(
                        conf,
    new CachedBufferAllocator());
     mc.addServer(ip1, port1);
     mc.addServer(ip2, port2);
     mc.addServer(ip3,port3);
     mc.addServer(ip4,port4);
     mc.addServer(ip5,port5);


    4、修復一系列發現的bug,如Command返回結果需要設置成原子引用、更嚴格的方法參數檢查、提示信息的友好、日志的優化、操作超時的時候取消操作等,重構部分代碼

    5、提供了javadoc文檔,這里下載。



    評論

    # re: xmemcached發布1.0版本  回復  更多評論   

    2009-03-14 11:30 by it
    不錯。。。。。。。

    # re: xmemcached發布1.0版本  回復  更多評論   

    2009-04-12 01:23 by risk
    有問題請教博主,我重新用jdk1.5 編譯后,不把成jar包,能正常運行,但一打成jar包后,就出現下面這個錯誤:
    Exception in thread "main" java.lang.NoSuchMethodError: net.spy.memcached.transcoders.Transcoder.encode(Ljava/lang/Object;)Lnet/spy/memcached/transcoders/CachedData;
    at net.rubyeye.xmemcached.XMemcachedClient.sendStoreCommand(XMemcachedClient.java:759)
    at net.rubyeye.xmemcached.XMemcachedClient.set(XMemcachedClient.java:490)
    at org.ce.fast.test.XMemcachedClientTest.main(XMemcachedClientTest.java:17)
    主站蜘蛛池模板: 亚洲高清成人一区二区三区| 国产无遮挡又黄又爽免费视频| 亚洲国产日韩成人综合天堂| 久久亚洲精品无码av| 美女黄网站人色视频免费国产| 亚洲熟妇无码AV| 四虎www成人影院免费观看| 国产亚洲人成在线播放| 免费国产成人午夜私人影视 | 亚洲高清视频免费| 曰批全过程免费视频网址| 国产精品亚洲精品青青青| 成人毛片免费在线观看| 瑟瑟网站免费网站入口| 国产亚洲大尺度无码无码专线 | 亚洲视频在线观看2018| 国产精品无码一二区免费 | 亚洲A∨精品一区二区三区| 一级毛片大全免费播放下载| 亚洲色成人中文字幕网站| 久久九九AV免费精品| 国产婷婷综合丁香亚洲欧洲| 免费jjzz在线播放国产| 91在线免费视频| 亚洲中文字幕在线无码一区二区| 日韩免费观看的一级毛片| 久久久WWW成人免费精品| 亚洲av女电影网| 在线中文高清资源免费观看| 一区二区视频免费观看| 久久亚洲国产成人精品性色| 在线观看视频免费国语| 中文字幕成人免费高清在线| 亚洲综合色一区二区三区小说| 免费观看美女裸体网站| 免费无码又爽又刺激一高潮| 亚洲校园春色另类激情| 亚洲一区二区三区在线观看精品中文| 19禁啪啪无遮挡免费网站| 男女猛烈无遮掩视频免费软件| 亚洲精品亚洲人成在线观看麻豆|