前言
針對(duì)JAVA開(kāi)發(fā)者,socketio-netty是一個(gè)socket.io的服務(wù)器端選擇,又是目前兼容最新0.9+ – 1.0的JAVA服務(wù)器端實(shí)現(xiàn)。
從http://socket.io官網(wǎng)來(lái)看,最近版本升級(jí)趨于緩和,幾乎是沒(méi)修正一個(gè)Bug,小版本就增加一次。已經(jīng)是非常穩(wěn)定的版本了,可以真正使用了。
貌似國(guó)內(nèi)使用socket.io少之又少,可惜了,這么優(yōu)秀的全功能型實(shí)時(shí)推送實(shí)現(xiàn),小眾范圍內(nèi)被知曉。
嗯,就最近當(dāng)前項(xiàng)目修改做一些簡(jiǎn)單記載。
升級(jí)手記
- netty升級(jí)到3.4.5
3.4.5的QueueFactory類(lèi),增加對(duì)了JAVA SE 7引入的JUC并發(fā)類(lèi)LinkedTransferQueue,若是本地使用JAVA SE 6,還想要保持高性能的阻塞隊(duì)列,那就需要引入Doug Lea’s jsr166y.jar并發(fā)包(下載地址),然后修改一下QueueFactory實(shí)現(xiàn)。我已經(jīng)重新打包成jar包(這里是netty-3.4.5.Final-modify.jar)。
QueueFactory原始代碼:
QueueFactory修改后代碼:
- socket.io client 升級(jí)到 0.9.6
- 支持將HTML/CSS/JS等文件
socketio.properties 增加配置項(xiàng)static,指定靜態(tài)資源的相對(duì)路徑 ,默認(rèn)是static
若瀏覽器請(qǐng)求:http://localhost:9000/style/chat.css,則此文件相對(duì)路徑為 static/style/chat.css,其它文件與此類(lèi)似。
此屬性便于打包,以及不再單獨(dú)依賴Web容器
項(xiàng)目中,直接把網(wǎng)頁(yè)文件拷貝到/source/static目錄中,運(yùn)行相應(yīng)的JAVA文件(ChatServer.java) - 在Google Code 增加demo
下載聊天示范,下載后解壓,雙擊 start.bat或者start.sh,瀏覽 http://localhost:9000/ 即可。
有時(shí)間,會(huì)聊聊更具體的實(shí)時(shí)Web一些心得,以及更為具體的示范等。