欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

spring+netty+haproxy三人行組合

系統 1937 0

非常喜歡這個組合,內容轉自: http://www.blogjava.net/liuguly/archive/2014/05/21/413900.html?

netty是個高性能的網絡通信框架,該框架性能高異步事件驅動模式,數據讀寫更高效提供更全面功能強的ByteBuf緩沖。完全可以基于此框架:自定義cs協議通信

如果基于RMI框架,阿里的dubbo,facebook的thrift完全夠用了,但是有時候我們的客戶端不是java語言所寫或者走自定義協議通信,比如流行的openfire,tigase,ejabberd等基于xmpp協議,它們底層的通信要么基于現有的成熟框架,比如mima或者netty,要么自己實現底層socket通信,而且還涉及分布式緩存,集群,分布式垃圾回收,異常處理,連接管理等等,這都不是一件容易的事情。所以遇見這種情況,仍然兩種選擇:1、基于現有成熟通信框架。2、自己寫通信框架。

下面先說下TCP/IP參考模型,它是OSI參考模型7層的簡化 圖示:



看到上圖后,一目了然,基于HTTP協議的通信已經很成熟了,大多數框架都支持包括netty,如果客戶端基于http協議,那么netty自帶的http相關處理類完全足夠。

如果是自定義協議,那么走的是TCP/IP參考模型的傳輸層,可靠傳輸必然是TCP協議,舉例:
如果有以下自定義協議:
@@ID|info|time|xxx|xxx|$$\r\n

每天有上萬客戶端發送的都是此類消息,那么server的任務是保證數據安全、傳輸高效、維護連接、維護用戶session、支持高并發等等,那么綜合netty,寫自己的業務,就能事半功倍了。
先給一個極其簡單的架構圖:




haproxy負載均衡
nettyServer提供服務
DB存儲數據

這是一個很簡單的架構,若擴展
1:haproxy提供主從設備
2:nettyServer需維護共享數據塊安全,加同步或許會降低性能,或者針對該數據塊增加隊列機制,采用多線程守護模式編寫代碼。
3:客戶端非常多,橫向增加nettyServer。
4:若客戶端數量級別非常之大,數據庫采用讀寫分離主從庫,對業務進行梳理劃分,讀和寫在不同數據庫,DB將可橫向發展,最后可發展為大規模。
5:最后需對服務器節點再次劃分。
以上涉及細節會有很多

這種架構適用于自定義協議,若用應用層協議如http協議,架構模樣又會不同

spring+netty+haproxy三人行組合


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一区二区三区四区国产精品视频 | 欧美一区二区三区久久久 | 自拍亚洲一区 | 精品久久一区 | 亚洲综合久久成人A片红豆 日本亚洲成人 | 免费的污污网站 | 国产精品1区2区3区 另类视频综合 | 在线观看欧美三级 | 亚洲图片欧洲电影 | 日韩高清一区二区 | 香蕉视频在线观看免费国产婷婷 | 成人性生交A片免费网 | 国99久9在线 | 免费 | 综合二区 | 久草在线国产视频 | 波多野结衣在线网址 | 国产91久久最新观看地址 | 久久精品国产精品青草图片 | 黄色网址进入 | 日韩污视频 | 欧美久久久久久 | free japan xxxxhdsex69 | 国产成人小视频 | 久久精品 | 三级色视频 | 91视频在线 | 奇米9999 | 亚洲区激情区图片小说区 | 亚洲视频观看 | 亚洲一区美女 | 亚洲精品日韩在线 | 免费a视频在线观看 | 在线观看视频91 | 狠狠干美女| 国产激情久久久久久熟女老人AV | 久久人 | 国产成人精品区一区二区不卡 | 婷婷丁香综合 | 国产免费一区视频 | 成人国产一区二区 | 日本一区二区三区四区 |