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

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

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

    聶永的博客

    記錄工作/學(xué)習(xí)的點點滴滴。

    socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~

    緣起

    socket.io是一個跨瀏覽器的全平臺反響AJAX實現(xiàn),官網(wǎng)(http://socket.io)定義為:the cross-browser WebSocket for realtime apps.
    個人認為這是一個跨瀏覽器的集大成者,支持桌面端和移動端瀏覽器(http://socket.io/#browser-support):

    Desktop

    • Internet Explorer 5.5+
    • Safari 3+
    • Google Chrome 4+
    • Firefox 3+
    • Opera 10.61+

    Mobile

    • iPhone Safari
    • iPad Safari
    • Android WebKit
    • WebOs WebKit
    為了支持眾多瀏覽器,必然內(nèi)置對若干協(xié)議的支持:
    • WebSocket
    • Adobe® Flash® Socket
    • AJAX long polling
    • AJAX multipart streaming
    • Forever Iframe
    • JSONP Polling
    socket.io跨瀏覽器,根據(jù)瀏覽器自動適配最適合方案進行實時推送。
    官方提供了各種語言的實現(xiàn),見 https://github.com/learnboost/socket.io/wiki/,有java語言實現(xiàn)服務(wù)器端,但不支持最新的0.9版本,于是萌發(fā)了重寫一個的想法。

    概述

    這是一個Socket.IO服務(wù)器端實現(xiàn),基于netty框架,適配socket.io 0.9-1.0版本(雖然socket.io 目前還處于 0.9版本,會支持到1.0)
    項目地址: http://code.google.com/p/socketio-netty/
    采用流行的Apache License 2.0協(xié)議,svn作為源代碼管理。
    郵件討論組為 http://groups.google.com/group/socketio-netty
    或者
     https://groups.google.com/group/socketio-netty
    期待您的加入。
    至于為什么沒有采用tomcat/jetty支持的servlet3規(guī)范、sebsocket實現(xiàn),個人認為,構(gòu)建在其基礎(chǔ)上較為容易,tomcat7最新版剛剛支持websocket,傳說支持websocket的servlet 3.1還未出世,等等看吧。 而Netty這個異步IO框架,我們可以在它的基礎(chǔ)上一站式搞定如此多的傳輸通道/協(xié)議。
    socketio-netty支持:
    • WebSocket
    • Flash Socket
    • AJAX long polling
    • Forever Iframe
    • JSONP Polling
    等傳輸通道協(xié)議。

    示范

    本示范,參考 socket.io node.js 版本的聊天實現(xiàn)(chat),客戶端完全一致,服務(wù)器端完全換成了socketio-netty實現(xiàn)。其它的沒有任何變化。嗯,可能看一個示范,可以讓人更放心的使用。 客戶端入口 chat.html (存放在tomcat/jetty/nginx/apache/iis相應(yīng)位置,可以直接訪問即可): 看一下,我們的服務(wù)器端如何實現(xiàn),來一個啟動入口: 然后需要一個DemoChatHandler處理器,這個是一個單列多線程模式:
    以上就是整個的聊天室實現(xiàn),雖然不算優(yōu)雅,但很簡單。
    所有你所需要做的就是,檢出代碼,運行com.yongboy.socketio.test.ChatServer即可。

    posted on 2012-04-07 22:08 nieyong 閱讀(16171) 評論(7)  編輯  收藏 所屬分類: socket.io

    評論

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2012-06-12 12:06 sunyfun

    你好!,樓主,我想問一下這個socketio-netty 能在android上工作嗎?我的想法是任何一個android主機都有可能成為服務(wù)端。期待你的回復(fù)sunyfun320@gmail.coom  回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2012-08-20 15:36 黃普

    非常好,值得研究  回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2012-08-31 16:08 黃普

    請問一下,我怎么開一個線程來讀取數(shù)據(jù)庫,然后把數(shù)據(jù)通過handler發(fā)送出去  回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2012-11-28 20:14 陀陀

    您好 :

    我使用了您寫的socketio-netty,如果 在 socketio.properties中 改變 flash_policy_port,不是 默認的10843,比如改為10846,因為要在 IE中使用 ,發(fā)現(xiàn) 改了端口后 無法 連接 到 服務(wù)器 ,telnet新端口 是可以 的,IE 報如下 錯誤 :
    [WebSocket] cannot connect to Web Socket server at ws://127.0.0.1:9000/socket.io/1/flashsocket/10718c44-aef5-4cd0-b452-620b7875fe3c (SecurityError)
    make sure the server is running and Flash socket policy file is correctly placed

    src下 我新建了一個 static的包,里面放那2個swf文件。jsp中連接 語句如下 :var socket = io.connect('http://127.0.0.1:9000');

    上述 問題 ,如果我不改 socketio.properties中的10843的話,在 IE下是沒有問題的。

    非常抱歉,我反編譯了你的jar,雖然有默認配10843,但基本還是從配置文件中讀出flash_policy_port,應(yīng)該沒問題啊,我不知道這是什么問題。。。。,而且,我看到 socket.io.js里面也寫了10843,可我把這里改成10846還是無法連通。


    難道IE下只能10843?真心求教,期待你的回復(fù)

    我的郵箱 81150540@qq.com
      回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~[未登錄] 2013-01-05 12:50 陳磊

    在googlecode上面看見你的socketIO項目,基于netty,我在自己的項目上也有個基于netty的項目,目前連接在30000,輪詢發(fā)送,最高測試200多并發(fā)(因為硬件環(huán)境的限制),體現(xiàn)良好,對于netty有深入的研究,所以想加入你的那個開源項目,我的聯(lián)系方式是:13638363871@163.com(QQ,郵箱)。我的主頁是:http://my.oschina.net/chenleijava  回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2014-04-23 18:06 keeny

    @陀陀
    socket.io.js 里面有默認端口10843,寫死的,你把它改了,就可以了  回復(fù)  更多評論   

    # re: socketio-netty : 又一款socket.io服務(wù)器端實現(xiàn),兼容0.9-1.0版本~ 2014-07-10 12:55 lzh

    你的代碼我都沒有更改,我用IE8為什么會出現(xiàn) 您的主機中的軟件中止了一個已建立的連接????我的郵箱是472353391@qq.com  回復(fù)  更多評論   

    公告

    所有文章皆為原創(chuàng),若轉(zhuǎn)載請標(biāo)明出處,謝謝~

    新浪微博,歡迎關(guān)注:

    導(dǎo)航

    <2012年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    統(tǒng)計

    常用鏈接

    留言簿(58)

    隨筆分類(130)

    隨筆檔案(151)

    個人收藏

    最新隨筆

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲一本一道一区二区三区| 国产精品亚洲αv天堂无码| 亚洲精品亚洲人成在线播放| 亚洲国产精品一区| 久久亚洲精品成人| xvideos亚洲永久网址| 91精品国产免费久久久久久青草| 7m凹凸精品分类大全免费| 午夜不卡久久精品无码免费| 无码人妻久久一区二区三区免费 | 亚洲性无码AV中文字幕| 亚洲偷自精品三十六区| 亚洲人片在线观看天堂无码| 亚洲av无一区二区三区| 国产午夜亚洲精品不卡免下载| 无套内谢孕妇毛片免费看看| 一级做a爰片久久毛片免费看 | 亚洲国产aⅴ成人精品无吗| 亚洲AV女人18毛片水真多| 特级毛片A级毛片100免费播放| 成年大片免费高清在线看黄| 中文字幕av免费专区| 免费国产在线视频| 亚洲高清中文字幕免费| 国产最新凸凹视频免费| 亚洲天堂免费在线视频| 亚洲国产综合91精品麻豆| 亚洲jjzzjjzz在线观看| 美国毛片亚洲社区在线观看| 一区二区三区精品高清视频免费在线播放 | 亚洲成人网在线播放| 亚洲va久久久噜噜噜久久男同 | 免费日本黄色网址| 亚洲人成亚洲人成在线观看 | 亚洲国产成人影院播放| 全免费a级毛片免费看无码| 免费永久看黄在线观看app| 亚洲日本一区二区三区在线| 亚洲欧洲尹人香蕉综合| 国产亚洲人成在线播放| 黄色网站软件app在线观看免费 |