fqueue(二)

來源:互聯網
上載者:User

          上一篇blog分析了fqueue 的資料存放區層的實現。這篇主要分析通訊部分。fqueue使用jmemcached做為通訊層,jmemcached與用戶端的互動使用netty架構。

          主要的類如下:

         startNewQueue:啟動類,每new一個instance 都會啟動一個監聽了相應連接埠的服務。

         MemCacheDaemon:負責通訊的管理,包括調用netty建立監聽,接受串連等,這裡會根據互動資料格式的不同選擇處理位元據或字元資料。

         CacheImpl:對Cache介面的具體實現,使用FSQueue做為實際的資料存放區層。

         MemcachedCommandHandler:對netty收到的資料的實際處理類。

         基本處理流程如下:

        netty底層收到用戶端資料  ---------->由MemcachedBinaryCommandDecoder或MemcachedCommandDecoder進行初步解析轉化為內部可識的CommandMessage------------>由MemcachedCommandHandler根據CommandMessage中的cmd成員分辨具體的功能調用CacheImpl相應的方法處理----------->

FSQueue實現具體資料的增刪改隊列等---------->處理結果再由MemcachedBinaryResponseEncoder或MemcachedResponseEncoder進行編碼-------->由netty發送給用戶端。

        

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.