下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于JMS的企業(yè)即時(shí)通訊系統(tǒng)的設(shè)計(jì)基于JMS的企業(yè)即時(shí)通訊系統(tǒng)的設(shè)計(jì)
一、引言
即時(shí)通訊是一種基于網(wǎng)絡(luò)的即時(shí)交流消息的業(yè)務(wù)。一些企業(yè)基于平安的考慮或聯(lián)網(wǎng)的限制,需要在其內(nèi)部搭建即時(shí)通訊平臺(tái)。而實(shí)際應(yīng)用中,中小企業(yè)往往不需要特別多的功能,市面上的即時(shí)通訊工具中有近80%的功能很少被使用,局部功能甚至從未被用到。此外,這些通訊工具也存在一些缺乏,比方手工添加好友不僅繁瑣且容易遺漏,沒有提供可靠的通知效勞等等[1]。本文使用JMS技術(shù)設(shè)計(jì)搭建了一種適用于企業(yè)用戶的即時(shí)通訊系統(tǒng)。
二、JMS技術(shù)概述
JMS是Java平臺(tái)上有關(guān)面向消息中間件的技術(shù)標(biāo)準(zhǔn),它便于消息系統(tǒng)中的Java應(yīng)用程序進(jìn)行消息交換,并且通過提供規(guī)范的產(chǎn)生、發(fā)送、接收消息的接口簡(jiǎn)化企業(yè)應(yīng)用的開發(fā)[2]。
JMS定義了下列幾種元素[3]:〔1〕JMS提供者:實(shí)現(xiàn)JMS標(biāo)準(zhǔn)的消息隊(duì)列和通知等接口,對(duì)外提供消息效勞;〔2〕JMS客戶:生產(chǎn)或消費(fèi)基于消息的Java應(yīng)用程序或?qū)ο?;?〕JMS生產(chǎn)者:創(chuàng)立并發(fā)送消息的JMS客戶;〔4〕JMS消費(fèi)者:接收消息的JMS客戶;〔5〕JMS消息:JMS客戶之間傳遞的數(shù)據(jù)對(duì)象。
此外,JMS還定義了下列兩種消息傳輸模型[3]:〔1〕隊(duì)列模型:通過隊(duì)列分發(fā)消息,用來解決生產(chǎn)者和消費(fèi)者之間點(diǎn)到點(diǎn)的通信;〔2〕發(fā)布/訂閱者模型:支持向一個(gè)特定的消息主題發(fā)布消息,可被一個(gè)或多個(gè)消費(fèi)者訂閱。
三、系統(tǒng)總體設(shè)計(jì)
即時(shí)通訊系統(tǒng)主要包括即時(shí)信息和狀態(tài)呈現(xiàn)兩大核心效勞[4],以及用戶登錄、用戶信息維護(hù)、查看好友信息等根底效勞。結(jié)合一般的即時(shí)通訊工具,并考慮到企業(yè)用戶的需求,本文設(shè)計(jì)的系統(tǒng)還具有下列特點(diǎn):1、用戶可以使用企業(yè)員工編號(hào)直接登錄,無需注冊(cè);2、企業(yè)組織結(jié)構(gòu)和員工列表自動(dòng)同步到客戶端,不用手工添加好友;3、提供通知推送效勞,并為每條通知提供已讀回執(zhí);4、管理員可以通過系統(tǒng)后臺(tái)對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行維護(hù)。
本文設(shè)計(jì)的系統(tǒng)在網(wǎng)絡(luò)架構(gòu)上分為客戶端和效勞器端兩局部,在軟件開發(fā)模式上又可分為三層:表現(xiàn)層、邏輯層和數(shù)據(jù)層。系統(tǒng)體系結(jié)構(gòu)如圖1所示。
1、表現(xiàn)層:表現(xiàn)層是系統(tǒng)的用戶界面局部,負(fù)責(zé)將用戶操作傳遞給邏輯層,并同時(shí)接收邏輯層的信息。主要包括PC客戶端界面和后臺(tái)管理Web界面。
2、邏輯層:邏輯層主要負(fù)責(zé)處理系統(tǒng)業(yè)務(wù),是整個(gè)系統(tǒng)的核心。其包含消息分發(fā)局部和業(yè)務(wù)處理局部。前者負(fù)責(zé)創(chuàng)立和分發(fā)JMS消息,后者負(fù)責(zé)接收和處理JMS消息。在具體實(shí)現(xiàn)時(shí),客戶端和效勞器端均有相應(yīng)的消息模塊和業(yè)務(wù)模塊:客戶端的消息模塊創(chuàng)立、發(fā)送和接收J(rèn)MS消息,業(yè)務(wù)模塊處理JMS消息和響應(yīng)用戶操作;效勞器端的消息模塊充當(dāng)JMS提供者來分發(fā)JMS消息,業(yè)務(wù)模塊接收并處理特定的消息。此外邏輯層還包含后臺(tái)管理局部,提供Web效勞以便管理員進(jìn)行系統(tǒng)管理。
3、數(shù)據(jù)層:數(shù)據(jù)層負(fù)責(zé)完成系統(tǒng)中數(shù)據(jù)的定義、維護(hù)、訪問和更新,同時(shí)管理并響應(yīng)邏輯層的數(shù)據(jù)請(qǐng)求。包括效勞器端的MySQL數(shù)據(jù)庫(kù)和客戶端的SQLite數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)中維護(hù)有組織員工信息、聊天記錄、通知記錄等數(shù)據(jù)。
四、系統(tǒng)詳細(xì)設(shè)計(jì)
4.1系統(tǒng)通信消息設(shè)計(jì)
系統(tǒng)中各模塊之間通過JMS消息進(jìn)行通信。為了進(jìn)行有效的交互,通信雙方需要遵循一定的協(xié)議[5]。本文對(duì)JMS消息做下列標(biāo)準(zhǔn):1、按照功能不同,對(duì)JMS消息進(jìn)行分類。2、不同消息攜帶相應(yīng)內(nèi)容的消息體;3、消息體均采用TextMessage類型,并按照XML規(guī)范對(duì)內(nèi)容進(jìn)行組織。
系統(tǒng)中消息具體分為三類:〔1〕即時(shí)信息:包括即時(shí)聊天消息、群組聊天消息、通知消息與通知回執(zhí)消息;〔2〕狀態(tài)呈現(xiàn):狀態(tài)呈現(xiàn)消息;〔3〕根底操作:包括組織人員同步消息、用戶登錄請(qǐng)求與響應(yīng)消息、用戶信息維護(hù)請(qǐng)求與響應(yīng)消息、好友信息查詢請(qǐng)求與響應(yīng)消息。
4.2系統(tǒng)業(yè)務(wù)流程設(shè)計(jì)
效勞器啟動(dòng)之后,其消息模塊作為JMS提供者開啟JMS效勞,等待接收和分發(fā)客戶端發(fā)來的JMS消息,而其業(yè)務(wù)模塊開始監(jiān)聽ServerQueue隊(duì)列,等待處理用戶操作消息。
客戶端啟動(dòng)之后,其消息模塊作為JMS客戶連接效勞器,對(duì)登錄用戶編號(hào)的隊(duì)列進(jìn)行監(jiān)聽,等待接收效勞器或其他用戶發(fā)來的消息,而其業(yè)務(wù)模塊除了要等待處理收到的消息,還要對(duì)用戶在客戶端界面上的操作進(jìn)行響應(yīng),調(diào)用消息模塊接口創(chuàng)立和發(fā)送消息。用戶成功登錄并同步列表之后,客戶端還需訂閱Status主題,以獲取其他用戶的狀態(tài)消息。
4.2.1用戶根底操作
用戶根底操作包括用戶登錄、用戶信息維護(hù)、好友信息查詢等。業(yè)務(wù)流程如下:
1、客戶端向ServerQueue隊(duì)列發(fā)送用戶操作請(qǐng)求消息,消息體中攜帶操作類型、操作必要信息,比方用戶編號(hào)、用戶密碼等;2、效勞器端業(yè)務(wù)模塊接收到消息并進(jìn)行處理,將處理結(jié)果封裝成響應(yīng)消息,發(fā)送到該用戶的隊(duì)列;3、客戶端接收響應(yīng)消息,進(jìn)行解析和處理。
4.2.2人員組織同步
人員組織結(jié)構(gòu)包括企業(yè)部門列表,以及各部門員工列表。業(yè)務(wù)流程如下:
1、用戶登錄成功之后,效勞器向該用戶隊(duì)列發(fā)送組織員工同步消息,消息體攜帶組織列表和員工列表信息;2、客戶端接收消息,顯示在用戶界面。4.2.3用戶狀態(tài)呈現(xiàn)
狀態(tài)呈現(xiàn)指用戶高低線后在客戶端界面的用戶狀態(tài)的即時(shí)改變。業(yè)務(wù)流程如下:
1、用戶進(jìn)行狀態(tài)操作之后〔上線、忙碌、離開、離線〕,客戶端向Status主題發(fā)布狀態(tài)呈現(xiàn)消息,消息體攜帶用戶當(dāng)前狀態(tài);2、客戶端每隔60秒向Status主題發(fā)布當(dāng)前狀態(tài);3、客戶端接收到好友狀態(tài)消息,在用戶界面進(jìn)行呈現(xiàn);4、在60秒之內(nèi)沒有接收到好友的狀態(tài)消息,那么判斷該好友處于離線狀態(tài)。
4.2.4即時(shí)聊天
即時(shí)聊天指用戶之間實(shí)時(shí)的交流,包括點(diǎn)對(duì)點(diǎn)聊天和群組聊天。業(yè)務(wù)流程如下:
1、用戶選擇好友,輸入聊天內(nèi)容并點(diǎn)擊發(fā)送后,客戶端向?qū)Ψ疥?duì)列發(fā)送即時(shí)聊天消息,消息體攜帶發(fā)言用戶編號(hào)、聊天內(nèi)容等信息,并將聊天內(nèi)容保留到本地?cái)?shù)據(jù)庫(kù);2、用戶創(chuàng)立或選擇群組〔群組信息由創(chuàng)立者生成〕,輸入聊天內(nèi)容并點(diǎn)擊發(fā)送后,客戶端向群組內(nèi)所有好友的隊(duì)列發(fā)送群組聊天消息,消息體攜帶群組編號(hào)、群組名稱、群組成員、發(fā)言用戶編號(hào)、聊天內(nèi)容等信息,并進(jìn)行保留;3、客戶端接收聊天消息,在界面進(jìn)行顯示并保留。
4.2.5通知推送
通知推送指用戶對(duì)一個(gè)或假設(shè)干部門內(nèi)所有用戶發(fā)布通知消息,并接收已讀回執(zhí)。業(yè)務(wù)流程如下:
1、用戶選擇部門,輸入通知內(nèi)容并點(diǎn)擊發(fā)送后,向該部門內(nèi)所有用戶的隊(duì)列發(fā)送通知消息,消息體攜帶通知編號(hào)、發(fā)布者編號(hào)、通知內(nèi)容等信息,并保留到本地?cái)?shù)據(jù)庫(kù);2、客戶端接收通知消息,顯示并保留;3、用戶點(diǎn)擊閱讀后,客戶端向通知發(fā)布者的隊(duì)列發(fā)送通知回執(zhí)消息,消息體攜帶通知編號(hào)、接收者編號(hào)等信息。
4.3系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
系統(tǒng)數(shù)據(jù)庫(kù)包括效勞器端數(shù)據(jù)庫(kù)和客戶端數(shù)據(jù)庫(kù)兩局部。效勞端數(shù)據(jù)庫(kù)維護(hù)系統(tǒng)中所有員工和組織的根本信息;客戶端數(shù)據(jù)庫(kù)維護(hù)群組記錄、聊天記錄和通知記錄等信息。
效勞器端員工根本信息表包含用戶編號(hào)、用戶登錄密碼、用戶顯示名稱、用戶部門與崗位以及用戶個(gè)人信息〔性別、聯(lián)系方式等〕。組織根本信息表包含企業(yè)內(nèi)的部門列表。系統(tǒng)管理員可以通過后臺(tái)管理頁(yè)面對(duì)組織員工信息進(jìn)行維護(hù),進(jìn)行添加、修改和刪除操作。
客戶端聊天記錄表包含聊天消息收發(fā)者、聊天內(nèi)容、聊天時(shí)間、群組編號(hào)等信息。群組記錄表包含群組編號(hào)、群組名稱、群組成員等信息。通知記錄表包含通知收發(fā)者、通知內(nèi)容、通知回執(zhí)信息等。
五、系統(tǒng)測(cè)試
即時(shí)通訊系統(tǒng)客戶端與后
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 萬兆小區(qū)項(xiàng)目方案及實(shí)施路徑分析
- 二零二五年度2025版高科技企業(yè)員工股權(quán)離婚處理協(xié)議樣本3篇
- 2025版家庭裝修售后維修服務(wù)承攬合同
- 2024年資產(chǎn)收購(gòu)合同范本:公司兼并合同(2024版)
- 2025版酒水行業(yè)供應(yīng)鏈金融服務(wù)與風(fēng)險(xiǎn)管理合同3篇
- 2025版P2P借貸平臺(tái)合規(guī)性評(píng)估與法律咨詢合同3篇
- 2025年中國(guó)移動(dòng)運(yùn)營(yíng)增值業(yè)務(wù)行業(yè)發(fā)展監(jiān)測(cè)及投資戰(zhàn)略研究報(bào)告
- 2025年中國(guó)體外診斷儀器行業(yè)競(jìng)爭(zhēng)格局分析及投資戰(zhàn)略咨詢報(bào)告
- 2024年透支卡借款合同
- 中國(guó)低空消費(fèi)行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及前景趨勢(shì)與投資分析研究報(bào)告(2024-2030版)
- GB∕T 25684.5-2021 土方機(jī)械 安全 第5部分:液壓挖掘機(jī)的要求
- 特種涂料類型——耐核輻射涂料的研究
- 二氧化碳可降解塑料生產(chǎn)項(xiàng)目建議書
- 化工裝置常用英語詞匯對(duì)照
- 幼兒園幼兒教育數(shù)學(xué)領(lǐng)域核心經(jīng)驗(yàn)
- 病例討論麻醉科PPT課件
- EBZ220A掘進(jìn)機(jī)幻燈片
- 集體跳繩賽規(guī)則
- 煤礦調(diào)度工作培訓(xùn)內(nèi)容
- 機(jī)械原理課程設(shè)計(jì)-旋轉(zhuǎn)型灌裝機(jī)運(yùn)動(dòng)方案設(shè)計(jì)
- 標(biāo)準(zhǔn)《大跨徑混凝土橋梁的試驗(yàn)方法》
評(píng)論
0/150
提交評(píng)論