freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

企業(yè)即時(shí)通信客戶端的開發(fā)與性能測(cè)試-wenkub.com

2025-03-21 06:42 本頁(yè)面
   

【正文】 最后我要感謝父母對(duì)我在學(xué)習(xí)和工作期間的關(guān)懷和鼓勵(lì),我所有的成績(jī)中都有他們的心血。我要感謝云南省Linux公共服務(wù)技術(shù)支持中心技術(shù)處的所有人。在這個(gè)項(xiàng)目的過(guò)程中,我得到了許許多多人的指導(dǎo)和幫助。致謝四年的學(xué)習(xí)生活即將結(jié)束。正是開源的力量使得企業(yè)用戶可以享受到由個(gè)人開發(fā)、定制或整合的成果,加速推進(jìn)基于國(guó)產(chǎn)軟件的正版化,通過(guò)軟件正版化帶動(dòng)本國(guó)軟件產(chǎn)業(yè)的發(fā)展。該客戶端具有以下優(yōu)點(diǎn):(1)開放源碼SPGEcq客戶端軟件的源代碼遵循GNU較寬松的公共許可證(GNU Lesser General Public License,LGPL),可向任何人提供開放式的訪問(wèn)??蛻舳烁鞴δ苣K的問(wèn)題導(dǎo)致運(yùn)行中整個(gè)即時(shí)通信系統(tǒng)的性能受到影響。 每秒點(diǎn)擊數(shù)的曲線圖 The Curve Diagram of Hits per Second 吞吐量的曲線圖 The Curve Diagram of Throughput可以看到在7小時(shí)20分左右,吞吐量有一個(gè)明顯變低的趨勢(shì),說(shuō)明此時(shí)應(yīng)用服務(wù)器已經(jīng)遇到了瓶頸。從圖中可以看到,當(dāng)Vuser增長(zhǎng)到50時(shí),基本上所有事務(wù)的響應(yīng)時(shí)間都在5秒以內(nèi),因此,根據(jù)需求和“性能下降曲線分析法”可以得出結(jié)論:(1)在“系統(tǒng)應(yīng)用典型場(chǎng)景”條件下,被測(cè)系統(tǒng)在50個(gè)并發(fā)用戶的訪問(wèn)情況下事務(wù)響應(yīng)時(shí)間小于5秒。 基礎(chǔ)性能分析。 測(cè)試環(huán)境 Test Environment設(shè)備硬件配置軟件設(shè)置數(shù)據(jù)庫(kù)服務(wù)器HP 8000服務(wù)器,磁盤陣列CPU 12*850MHz,24GB內(nèi)存Asianux server MySQL 應(yīng)用服務(wù)器HP 8000服務(wù)器,磁盤陣列CPU 12*850MHz,24GB內(nèi)存SPGLinux serverOpenfire +Tomcat 性能測(cè)試控制臺(tái)PC機(jī),160GB 硬盤CPU 2GHz,1GB 內(nèi)存LoadRunner AnalysisMicrosoft Office Excel負(fù)載生產(chǎn)設(shè)備PC機(jī),160GB 硬盤CPU 2GHz,1GB 內(nèi)存Windows XPSPGLinux DesktopLoadRunner Agent。 測(cè)試設(shè)計(jì)與開發(fā)對(duì)本即時(shí)通信系統(tǒng)性能測(cè)試而言,測(cè)試場(chǎng)景關(guān)注用戶接入系統(tǒng)的數(shù)量,以場(chǎng)景來(lái)體現(xiàn)性能測(cè)試的目的和目標(biāo)。最終確定的明確的性能需求如下:(1)系統(tǒng)能夠在高于實(shí)際系統(tǒng)運(yùn)行壓力1倍的情況下,持續(xù)穩(wěn)定工作8小時(shí):持續(xù)穩(wěn)定工作定義為在系統(tǒng)運(yùn)行期間,系統(tǒng)的可用資源不會(huì)出現(xiàn)持續(xù)性減少,客戶端響應(yīng)速度沒有顯著變化。(2)平均每個(gè)用戶的登錄會(huì)話時(shí)間為4小時(shí),即平均每個(gè)用戶在8小時(shí)時(shí)間內(nèi)有4個(gè)小時(shí)處于“使用系統(tǒng)”的狀態(tài)。 性能測(cè)試領(lǐng)域分析根據(jù)對(duì)該即時(shí)通信系統(tǒng)項(xiàng)目背景的了解,本性能測(cè)試要解決的主要問(wèn)題為:驗(yàn)證系統(tǒng)是否到了預(yù)期的性能指標(biāo),能否穩(wěn)定地在當(dāng)前環(huán)境下運(yùn)行。(3)能監(jiān)控Windows服務(wù)器的主要性能計(jì)數(shù)器值,例如服務(wù)器的內(nèi)存使用狀況、CPU使用狀況、磁盤I/O情況等。 測(cè)試前期準(zhǔn)備及工具引入在把握該系統(tǒng)的基本狀況之后,開始進(jìn)行測(cè)試前期的準(zhǔn)備工作并引入測(cè)試工具。這種方法是用的模型稱為性能測(cè)試過(guò)程通用模型(Performance Test General Model, PTGM)。對(duì)性能測(cè)試來(lái)說(shuō),找到這些區(qū)域和拐點(diǎn),也就可以找到性能瓶頸產(chǎn)生的地方。響應(yīng)時(shí)間的這種變化經(jīng)常會(huì)很快地發(fā)生,并在傾斜度或趨勢(shì)上造成曲線急劇的變化。這也就意味著在此區(qū)域的負(fù)載增加了,響應(yīng)時(shí)間也會(huì)變長(zhǎng),但增長(zhǎng)率不是很高。(3)壓力區(qū)域從圖中用戶負(fù)載在100到175之間的區(qū)域可以明顯地看到,隨著負(fù)載的增長(zhǎng)響應(yīng)時(shí)間開始延長(zhǎng)。(2)性能平坦區(qū)在模仿10到100個(gè)用戶的區(qū)域范圍內(nèi),可以看到系統(tǒng)獲得了更好的性能并在一段時(shí)間內(nèi)保持不變。因?yàn)橛韶?fù)載生成工具生成的單用戶響應(yīng)通常都會(huì)稍慢于某些頁(yè)面的最佳性能,與負(fù)載生成工具的工作方式(比如線程)、高速緩存和休眠中的硬盤等有關(guān)。(4)測(cè)試沒有真正對(duì)系統(tǒng)產(chǎn)生壓力。95%以上的曲線圖都會(huì)像該圖一樣。左邊的縱軸是幾秒鐘內(nèi)端到端的響應(yīng)時(shí)間,而底部的橫軸則是訪問(wèn)系統(tǒng)的用戶總數(shù)。 性能下降曲線分析法性能下降曲線實(shí)際上描述的是性能隨用戶數(shù)增長(zhǎng)而出現(xiàn)下降趨勢(shì)的曲線。因此,在考慮計(jì)算并發(fā)用戶時(shí),可以結(jié)合系統(tǒng)所應(yīng)用的業(yè)務(wù)模式,多考慮一些可能發(fā)生的場(chǎng)景,并基于這些場(chǎng)景進(jìn)行估算。例如,可以設(shè)定1個(gè)小時(shí)為考察時(shí)間的粒度。因?yàn)樵诠剑ǎ┖停ǎ┲腥匀灰浪恪安l(fā)用戶的平均數(shù)”和“登錄會(huì)話時(shí)間長(zhǎng)度”,而要精確估算這兩個(gè)值并不容易。因?yàn)閠0時(shí)刻有三個(gè)登錄會(huì)話,所以t0時(shí)刻的并發(fā)用戶數(shù)為3。以需要用戶驗(yàn)證的應(yīng)用程序?yàn)槔?,一個(gè)登錄會(huì)話在用戶登入系統(tǒng)的時(shí)刻開始,并于用戶注銷的時(shí)刻結(jié)束。因此,下面的討論主要是針對(duì)業(yè)務(wù)并發(fā)用戶數(shù)(簡(jiǎn)稱并發(fā)用戶數(shù))。這里提出“并發(fā)用戶數(shù)”的另一個(gè)概念。這個(gè)并發(fā)的概念通常在性能測(cè)試方法中用于從業(yè)務(wù)的角度模擬真實(shí)的用戶訪問(wèn),體現(xiàn)的是業(yè)務(wù)并發(fā)用戶數(shù)。它們與響應(yīng)時(shí)間的關(guān)系可以如下表示:消息響應(yīng)時(shí)間=網(wǎng)絡(luò)傳輸時(shí)間+即時(shí)通信服務(wù)器延遲時(shí)間+數(shù)據(jù)庫(kù)延遲時(shí)間消息響應(yīng)時(shí)間=(T1+T2+T3+T4)+(A1+A3)+A2 即時(shí)通信的消息響應(yīng)時(shí)間分解 Resolving of Instance Message’s Response Time之所以要對(duì)響應(yīng)時(shí)間進(jìn)行這樣的分解,主要目的是為了能更好定位性能瓶頸。以本即時(shí)通信系統(tǒng)為例。 即時(shí)通信系統(tǒng)性能測(cè)試中使用的統(tǒng)計(jì)量目前在性能測(cè)試中使用的統(tǒng)計(jì)量包括:響應(yīng)時(shí)間(Response Time)、并發(fā)用戶數(shù)(Number of Concurrent Users)、吞吐量(Throughput)、性能計(jì)數(shù)器(Performance Counter)和思考時(shí)間(Think Time)等。* 參數(shù):包含打包文件的目錄libDir,解包時(shí)是否要顯示狀態(tài)printStatus */private void unpackArchives(File libDir, boolean printStatus){…}}4 即時(shí)通信系統(tǒng)的性能測(cè)試即時(shí)通信系統(tǒng)的性能測(cè)試屬于黑盒測(cè)試。 * 解壓縮lib里的打包文件和插件并將它們加載到類裝載器。 */public static void main(String[] args){ new Startup().start(args)。 */public FileDialog getFileChooser(Frame parent, String title){…}}SPGEcq客戶端的啟動(dòng)主要由Startup類來(lái)完成,包含main()方法。 * 參數(shù):監(jiān)聽器listener */public void removeTransferListener(FileTransferListener listener){…}/** * 設(shè)置當(dāng)前默認(rèn)存儲(chǔ)文件的目錄。 * 參數(shù):要發(fā)送的圖片image,要發(fā)送圖片給用戶所在的聊天室room */public void sendImage(final BufferedImage image, final ChatRoom room){…}/** * 如果在剪貼板有一張圖片則返回那張圖片,否則返回null */public static BufferedImage getClipboard(){…}/*** 把一個(gè)新的傳輸監(jiān)聽器TransferListener添加到工廠類SparkManager。 * 并確保同步鎖定以防創(chuàng)建了兩個(gè)實(shí)例。 */private void buildContactList(){…}/** * 當(dāng)NEW賬戶被添加時(shí)調(diào)用 * 參數(shù):被添加的地址addresses */public void entriesAdded(final Collection addresses){…}/** * 添加一個(gè)用戶到聯(lián)系人列表 * 參數(shù):用戶的名冊(cè)登記RosterEntry值entry */private void addUser(RosterEntry entry){…}/** * 當(dāng)基于預(yù)訂通知的名冊(cè)改變時(shí)進(jìn)行處理。 */private void updateContactItemsPresence(Presence presence, RosterEntry entry, String bareJID){…}/** * 移動(dòng)用戶到他所屬的每個(gè)群組。 * 如果用戶在線,檢查是否在離線組。 * 拋出XMPPException */private XMPPConnection getConnection() throws XMPPException{…}/** * 如用戶已注冊(cè)返回真 * 返回真或假 */public Boolean isRegistered(){…}…} 聯(lián)系人列表 聯(lián)系人列表面板 Contact List Panel對(duì)列表中的聯(lián)系人分組及聯(lián)系人進(jìn)行操作。 */private void createAccout(){…}/** * 在賬戶創(chuàng)建失敗時(shí)被調(diào)用。 */public AccountCreationWizard(){...}/** * 返回新賬戶的用戶名。 * 返回:KDC主機(jī)名。 */public class LoginBackgroundPanel extends JPanel{…}/*** 圖像面板顯示SPGEcq徽標(biāo)。 登錄對(duì)話框 SPGEcq登錄對(duì)話框 Login Dialog of SPGEcqLoginDialog類負(fù)責(zé)創(chuàng)建登錄窗口,初始化SPGEcq及其插件。在一個(gè)共享的中間層——Smack庫(kù)封裝了企業(yè)邏輯,不同客戶端應(yīng)用程序可以共享同一個(gè)中間層,而不必由每個(gè)程序單獨(dú)實(shí)現(xiàn)企業(yè)邏輯。SparkManager中的許多方法非常強(qiáng)大,如getChatManager()、getSessionManager ()、getMainWindow() 和getConnection(),它們分別可以獲得聊天管理器、會(huì)話管理器、主窗口和服務(wù)器連接的實(shí)例。 客戶端工廠類的類圖 Class Diagram of Client Manufactory Class以上工廠類是客戶端API架構(gòu)的關(guān)鍵。最后根據(jù)實(shí)際情況對(duì)各個(gè)類的方法進(jìn)行補(bǔ)充,得到完整的類圖。(4)分析各用例間的關(guān)系,得到用例圖。首要任務(wù)是獲取用戶需求,對(duì)系統(tǒng)進(jìn)行描述并建立用例模型。(7)消息管理:可以查看本地的聊天記錄。(4)刪除聯(lián)系人:右擊聯(lián)系人結(jié)點(diǎn),選擇彈出菜單的“移除聯(lián)系人”項(xiàng)可刪除聯(lián)系人。(2)注冊(cè)賬號(hào):客戶端點(diǎn)擊登錄模塊的“賬戶”按鈕,在創(chuàng)建新賬戶窗口中輸入用戶名、密碼和服務(wù)器IP,確認(rèn)后就可以申請(qǐng)到一個(gè)賬號(hào)了。 客戶端功能圖 Client Functional Diagram 功能描述(1)用戶登錄:已注冊(cè)的用戶輸入正確的賬戶和密碼,選擇服務(wù)器的IP地址,正常進(jìn)入SPGEcq客戶端系統(tǒng)。(2)向在XMPP開發(fā)領(lǐng)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1