• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Epoll & Select性能比較測試


            測試程序分客戶端(client)及服務(wù)端(server).  服務(wù)端分別以select和epoll兩種I/O模型實現(xiàn).
            1.連接建立速度測試
            某個時刻連續(xù)向server發(fā)起大量連接請求,比較兩種I/O模型下Server端的連接接收速度。在客戶端記錄下連接數(shù)完全建立后所花費的時間.
            操作步驟:
            I.啟動服務(wù)端程序.
            Selectserver命令:(./SelectServer 192.168.0.30 8000 1>/dev/null)
            EpollServer命令:   (./EpollServer 192.168.0.30 8000 1>/dev/null)
            參數(shù)1(192.168.0.30)為server綁定的IP, 參數(shù)2(8000)為server監(jiān)聽的端口號;
            II.啟動客戶端程序
            命令:./deadlink 192.168.0.30 8000 800
            參數(shù)1(192.168.0.30)是server端的IP, 參數(shù)2(8000)是server監(jiān)聽的端口,參數(shù)3(800)是你想要建立連接的數(shù)量.等連接全部建立完畢后程序會自動打印出所花費的時間及成功建立的連接數(shù).每個連接數(shù)量記錄5組數(shù)據(jù),去除一個最大及最小值后,取余下的3組數(shù)據(jù)的平均值作為最終結(jié)果.

            2.數(shù)據(jù)傳輸性能測試
            client端創(chuàng)建若干線程,每個線程與server建立一個連接。連接建立后向server發(fā)送取數(shù)據(jù)請求,然后讀取server端返回的數(shù)據(jù).如此反復(fù)循環(huán)。每個client請求server返回的數(shù)據(jù)字節(jié)數(shù)為1K(1024bytes)大小.當(dāng)連接全部建立后,系統(tǒng)穩(wěn)定下來,記錄此時的服務(wù)程序?qū)?yīng)的CPU占用率及內(nèi)存使用率.每個連接數(shù)量記錄下12組數(shù)據(jù)供分析使用.分析結(jié)果中將除去一個最大值及最小值,取余下的10組數(shù)據(jù)的平均值作為最終結(jié)果。
            操作步驟:
            I啟動服務(wù)端
            Selectserver命令:(./SelectServer 192.168.0.30 8000 1>/dev/null)
            EpollServer命令:   (./EpollServer 192.168.0.30 8000 1>/dev/null)
            參數(shù)1(192.168.0.30)為server綁定的IP, 參數(shù)2(8000)為server監(jiān)聽的端口號;
            II.啟動客戶端
            命令: ./activelink 192.168.0.30 8000  800
            參數(shù)1(192.168.0.30)是server端的IP, 參數(shù)2(8000)是server監(jiān)聽的端口,參數(shù)3(800)是你想要建立的線程數(shù)(連接數(shù)).因為每個線程建立一個連接,所以此數(shù)量亦即建立的連接數(shù)。
            III. netstat –la | grep “192.168.0.250” | wc –l 查看連接數(shù)量,等待建立完成.此處192.168.0.250為客戶端機器IP地址。
            IV.連接全部建立后等待5-6分鐘,待系統(tǒng)穩(wěn)定下來后top查看并記錄12 組Server 程序所占CPU/內(nèi)存使用率.
            1.2 測試平臺說明
            Server機器配置
            CPU(處理器) Intel(R) Pentium(R) 4 CPU 2.40GHz, L2 cache size: 512 KB
            RAM(內(nèi)存) 248384kb, 約為242M
            OS(操作系統(tǒng)) Redhat Linux 9.0, kernel 2.6.16-20
            NIC(網(wǎng)卡) Realtek Semiconductor RTL-8139/8139C/8139C+ (rev 10), work on negotiated 100baseTx-FD

            client機器配置
            CPU(處理器) Intel(R) Pentium(R) 4 CPU 2.0GHz, L2 cache size: 512 KB
            RAM(內(nèi)存) 222948kb, 約為218M
            OS(操作系統(tǒng)) Redhat Linux 9.0, kernel 2.4.20-8
            NIC(網(wǎng)卡) VIA Technologies VT6102 [Rhine-II] (rev 74)
            1.3 測試工具說明


            Server端程序:
            源代碼文件:server.cpp (請用UE打開) ,運行make生成SelectServer 及 EpollServer可執(zhí)行文件.
             
            客戶端程序:
            源代碼文件:deadlink.cpp, activelink.cpp(請用UE打開),運行make生成deadlink(接收連接速度測試客戶端),activelink(數(shù)據(jù)傳輸測試客戶端)
              
            2 測試結(jié)果
            2.1 接收連接速度測試結(jié)果
            表 2 1接收連接速度測試結(jié)果
            連接數(shù)\IO模型 SelectServer(單位 秒s) EpollServer(單位 秒s)
            100 0s 0s
            200 0s 0s
            300 6s 0s
            400 14s 0s
            500 24s 0s
            600 36s 0.3s
            700 48s 0s
            800 59s 0s
            900 72s 0s
            1000 84s 0s

            2.2 數(shù)據(jù)傳輸性能測試
            表 2 2數(shù)據(jù)傳輸性能測試結(jié)果
            連接數(shù)\IO模型 SelectServer [cpu%, mem%] EpollServer [cpu%, mem%]
            100 [28.06,    0.3] [21.74, 0.3]
            200 [43.66,    0.3] [40.50, 0.3]
            300 [47.09,    0.3] [42.73, 0.3]
            400 [59.04,    0.3] [44.55, 0.3]
            500 [54.44,    0.3] [51.00, 0.3]
            600 [63.38,    0.3] [50.76, 0.3]
            700 [65.77,    0.3] [51.47, 0.3]
            800 [70.52,    0.3] [52.80, 0.3]

            posted on 2008-04-16 09:06 RedLight 閱讀(1592) 評論(0)  編輯 收藏 引用 所屬分類: 網(wǎng)絡(luò)服務(wù)器開發(fā)

            <2008年4月>
            303112345
            6789101112
            13141516171819
            20212223242526
            27282930123
            45678910

            導(dǎo)航

            統(tǒng)計

            公告


            Name: Galen
            QQ: 88104725

            常用鏈接

            留言簿(3)

            隨筆分類

            隨筆檔案

            相冊

            My Friend

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久精品国产亚洲Aⅴ蜜臀色欲 | 亚洲色欲久久久久综合网| 久久久精品日本一区二区三区 | 久久99国产综合精品女同| 色综合久久中文色婷婷| 精品久久久久国产免费| 久久久亚洲裙底偷窥综合| 国产精品久久久久天天影视 | 国内精品久久久久久99| 国产精品久久久天天影视香蕉| 久久久久99这里有精品10 | 久久久久久精品免费看SSS| 97久久久精品综合88久久| 欧美精品福利视频一区二区三区久久久精品 | 久久最新免费视频| 91超碰碰碰碰久久久久久综合| 亚洲综合久久夜AV | 国产精品成人精品久久久| 久久精品国产精品亚洲毛片| 超级97碰碰碰碰久久久久最新 | 日本久久久久久久久久| 国产精品一久久香蕉产线看| 色婷婷综合久久久久中文| 久久久久国产一区二区| 国内精品久久久久久久涩爱| 久久精品国产亚洲沈樵| 91精品国产9l久久久久| 久久综合九色综合网站| 久久婷婷午色综合夜啪| 久久亚洲国产成人影院网站| 国产成人无码精品久久久久免费| 国产精品久久久久天天影视| 国产情侣久久久久aⅴ免费| 香蕉久久av一区二区三区| 久久久久亚洲av成人网人人软件 | www久久久天天com| 久久精品国产99国产电影网 | 99久久精品免费看国产一区二区三区| 久久久久久国产精品美女| 久久久久国产精品嫩草影院| 人人狠狠综合久久亚洲|