AgileEAS.NET SOA 中介軟體平臺.Net Socket通訊框架-完整應用例子-線上聊天室系統-下載配置
一、AgileEAS.NET SOA中介軟體Socket/Tcp框架介紹
AgileEAS.NET SOA中介軟體Socket/Tcp框架是一套Socket通訊的訊息中介軟體:
二、簡單的伺服器客戶段訊息應答
三、完整的應用-實現完整的聊天室
本文我們將實現一個多人聊天室的應用,類似於早年的網路聊天室或者當年的QQ網路聊天室或者遊戲裡面的聊天功能,聊到室主介面如下:
聊天室支援公聊和私聊頻道,理論上可以支援幾百甚至幾千人,具體上限沒有經過測試,在這個案例之中,大家將會掌握基於AgileEAS.NET SOA中介軟體Socket/Tcp框架的比較複雜的訊息定義及訊息處理及訊息協調,同時還會掌握如何管理服務端的連結、聊天室使用者線上狀態、訊息的多目標轉發等功能。
本案例的可執行客戶端程式和服務端已經在我們的伺服器上為大家部署了一套,大家可以下載客戶段http://42.121.30.77/downloads/eas/examples/chat.client.rar體驗,下載客戶端壓縮包之後解壓縮,註冊一個賬號就可以使用這個賬號登入我們為大家搭建的聊天室服務端。
三、下載原始碼編譯配置執行
本案例原始碼請通AgileEAS.NET SOA中介軟體官方網站的最新下載中的欄目進行下載或者從SVN中獲取最新版本的原始碼:
下載或者SVN-OUT得到程式碼之後我們來看一下程式碼文建構:
一級目錄 |
二級目錄 |
說明 |
Code |
程式原始碼 |
|
Entities |
實體(ORM)程式碼 |
|
BLL.Contracts |
業務契約定義程式碼 |
|
BLL.Host |
資料實現程式碼 |
|
Messages |
Socket通訊訊息定義 |
|
Services |
Socket服務定義 |
|
ChatRoom |
客戶段程式程式碼 |
|
UserManage |
註冊使用者管理程式碼 |
|
db |
使用者資料庫檔案,Sqlite資料庫 |
|
Documents |
文件,使用者模型文件 |
|
Publish |
引用程式集及編譯輸出 |
然後用VS2010或者VS2012開啟Code目錄之中的ChatRoom解決方案進行編譯,編譯寫成之後我們開始進行配置。
開啟Publish目錄之中的EAS.SOA.Server.exe.config進行服務端配置:
其中最重要的配置就是配置服務端sqlite資料庫檔案的路徑,以及埠號,當然埠號是可以不用修改的,配置完成之後我們啟動Publish目錄之中的soaserver.start.bat指指理檔案來啟動聊天室服務端:
啟動聊天室服務端的本質是啟動AgileEAS.NET SOA 中介軟體SOA服務,在SOA服務之中我們集成了Socket外掛服務系統,我們的聊天室做為一個SOA的Socket外掛服務被進行載入和處理,需要說明的是如果你的執行環境是Win7或者Win2008作業系統,需要以管理員許可權執行啟動指令碼:
接下來我們配置客戶段,開啟ChatingRoom.MainClient.exe.config檔案,修改以下地方:
這樣我們變完成了聊天室客戶端的配置,執行ChatingRoom.MainClient.exe程式啟動客戶端的登入視窗:
點使用者註冊註冊一個新使用者:
註冊成功之後使用這個使用者登入聊天室:
到時為止,聊天室案例的配置過程到此完成!
四、原始碼學習
要學習和研究本案例的原始碼,請參考:
在之後的文章之中我們將會對本案例原始碼進行分析。
五、特別感謝
感謝團隊成員計文忻同學為大家編寫了本案例的第一版本,之後我在通訊和介面上做了一些小的調整,也感謝王濤同學為本應用案例提供了Banner圖片和一些介面美工建議,也感謝在此案例進行測試和提出建議的客戶和小夥伴們。
六、聯絡我們
為了完善、改進和推廣AgileEAS.NET而成立了敏捷軟體工程實驗室,是一家研究、推廣和發展新技術,並致力於提供具有自主智慧財產權的業務基礎平臺軟體,以及基於業務基礎平臺了開發的管理軟體的專業軟體提供商。主要業務是為客戶提供軟體企業研發管理解決方案、企業管理軟體開發,以及相關的技術支援,管理及技術諮詢與培訓業務。
AgileEAS.NET平臺自2004年秋呱呱落地一來,我就一直在逐步完善和改進,也被應用於保險、醫療、電子商務、房地產、鐵路、教育等多個應用,但一直都是以我個人在推廣,2010年因為我辭職休息,我就想到把AgileEAS.NET推向市場,讓更多的人使用。
我的技術團隊成員都是合作多年的老朋友,因為這個平臺是免費的,所以也沒有什麼收入,都是由程式設計師的那種理想與信念堅持,在此我感謝一起奮鬥的朋友。
QQ:47920381,AgileEAS.NET
QQ群:113723486(AgileEAS SOA 平臺)/上限1000人
199463175(AgileEAS SOA 交流)/上限1000人
120661978(AgileEAS.NET 平臺交流)/上限1000人
212867943(AgileEAS.NET研究)/上限500人
147168308(AgileEAS.NET應用)/上限500人
172060626(深度AgileEAS.NET平臺)/上限500人
116773358(AgileEAS.NET 平臺)/上限500人
125643764(AgileEAS.NET探討)/上限500人
193486983(AgileEAS.NET 平臺)/上限500人
郵件:[email protected],[email protected],
電話:18629261335。