[本文屬原創,如有轉載,請註明出處http://blog.csdn.net/yl02520/article/]
如果要搭建一個Web伺服器,我們會有很多選擇,市場上也有很多成熟的產品供我們應用,比如開源的Apache,安裝後只需簡單的配置(或者預設配置)就可以工作了。但是如果想搭建一個WebSocket伺服器就沒有那麼輕鬆了,因為WebSocket是一種新的通訊協定,目前還是草案,沒有成為標準,市場上也沒有成熟的WebSocket伺服器或者Library實現WebSocket協議,我們就必須自己動手寫代碼去解析和組裝WebSocket的資料包。要這樣完成一個WebSocket伺服器,估計所有的人都想放棄,幸好的是市場上有幾款比較好的開源庫供我們使用,比如PyWebSocket,WebSocket-Node, LibWebSockets等等,這些庫檔案已經實現了WebSocket資料包的封裝和解析,我們可以調用這些介面,這在很大程度上減少了我們的工作量。
下面就簡單介紹一下這些開源的庫檔案。
1. PyWebSocket
PyWebSocket採用Python語言編寫,可以很好的跨平台,擴充起來也比較簡單,目前WebKit採用它搭建WebSocket伺服器來做LayoutTest。
我們可以擷取源碼通過下面的命令
svn checkouthttp://pywebsocket.googlecode.com/svn/trunk/ pywebsocket-read-only
更多的詳細資料可以從http://code.google.com/p/pywebsocket/擷取。
2. WebSocket-Node
WebSocket-Node採用JavaScript語言編寫,這個庫是建立在nodejs之上的,對於熟悉JavaScript的朋友可參考一下,另外Html5和Web應用程式受歡迎的程度越來越高,nodejs也正受到廣泛的關注。
我們可以從下面的串連中擷取源碼
https://github.com/Worlize/Websocket-Node
3. LibWebSockets
LibWebSockets採用C/C++語言編寫,可定製化的力度更大,從TCP監聽開始到封包的完成我們都可以參與編程。
我們可以從下面的命令擷取原始碼
git clone git://git.warmcat.com/libwebsockets