全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1967
推到 Plurk!
推到 Facebook!

如何做一個SQL Server與網路連線速率滴壓力測試程式呢?

答題得分者是:boson
vernalee
一般會員


發表:5
回覆:3
積分:1
註冊:2004-06-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-03-27 13:31:11 IP:61.56.xxx.xxx 訂閱
因公司需要而開發了一支資產管理程式,預計安裝於全省user電腦中,每當開機啟動時自動連結至SQL Server上讀取資料,判斷當日是否為該單位設定之排程執行時間。如果是,續執行資產資料搜集與結果上傳至FTP站台的作業。
目前估計全省同一時間之最大使用量約800名user,故想先針對SQL Server連線及網路傳輸速率做一個壓力測試,但因為沒做過這方面的測試,所以沒有頭緒應該如何處理,故想請問有沒有人之前有做過類似的測試,可以提供一點意見。
預計想測試的狀況為
(1)同時800個SQL Server connection 使用同一組帳號密碼(sql server 中設定的user),連至資料庫進行查詢及新增資料的作業速率。
(2)同時800個connection 使用同一組帳號密碼(FTP主機上建立的授權user),連至FTP主機進行資料上傳的作業速率。
(3)上述兩個狀況,若採用多組的帳號密碼執行,作業速率是否會有差異。
另外針對(3)的狀況,又延伸了一個問題,就是如果要減少connection,就須把帳號密碼、FTP主機IP、FTP上傳目錄等資料寫在ini或txt檔案中,隨user執行程式放置於個人電腦中,但我並不想將這些資料存在易讀取修改的檔案中(即使是加密後的資料值);若固定寫在程式裡,若須修改資料時又必須重新編譯程式發布到全省user電腦中,有沒有什麼方式是我可以寫在某個user無法讀取修改的地方,但須做設定值修改時,又可以只要更新資料的呢?
bruce
中階會員


發表:19
回覆:121
積分:83
註冊:2002-04-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-03-27 19:00:51 IP:218.164.xxx.xxx 訂閱
很有意思的問題,雖然沒做過這樣的測試,但有機會我會用800個物件同時去CONNECTION SQL 看看效能如何,寫這樣的一個測試程式應該不難才對。
bruce
中階會員


發表:19
回覆:121
積分:83
註冊:2002-04-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-03-27 19:08:29 IP:218.164.xxx.xxx 訂閱
(3)上述兩個狀況,若採用多組的帳號密碼執行,作業速率是否會有差異。
另外針對(3)的狀況,又延伸了一個問題,就是如果要減少connection,就須把帳號密碼、FTP主機IP、FTP上傳目錄等資料寫在ini或txt檔案中,隨user執行程式放置於個人電腦中,但我並不想將這些資料存在易讀取修改的檔案中(即使是加密後的資料值);若固定寫在程式裡,若須修改資料時又必須重新編譯程式發布到全省user電腦中,有沒有什麼方式是我可以寫在某個user無法讀取修改的地方,但須做設定值修改時,又可以只要更新資料的呢?

可以在SERVER端建立對應每一USER的INI檔,放置在FTP SERVER上面,由程式讀取,USER無法得知。
vernalee
一般會員


發表:5
回覆:3
積分:1
註冊:2004-06-22

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-03-28 12:13:03 IP:61.56.xxx.xxx 訂閱

===================引 用 文 章===================
可以在SERVER端建立對應每一USER的INI檔,放置在FTP SERVER上面,由程式讀取,USER無法得知。
===================引 用 文 章===================

因為希望連FTP Server連線用的帳號密碼資料都可以不寫死在程式中,目前參考了一些站上加解密的文章後,想到的方式是將資料寫入ini檔中,其中帳號密碼資料先使用加密處理,再用檔案加密的方式處理ini檔為加密檔。而user端在執行程式時先將加密檔解密並讀取所需資料後,將解密後的檔案刪除。這樣的作業只在user個人電腦中執行,且若ini檔size不大的狀況下處理應該也不會很耗時,但不知是不是還會有什麼其他尚未想到的問題....^O^....

另外關於800個SQL connection部分,有想過用迴圈的方式做800個connection,但這方式是不是能做到800個SQL connection同時連線...也是需要想一想滴啦....^o^
yckuo
高階會員


發表:55
回覆:389
積分:238
註冊:2003-03-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-03-28 12:39:14 IP:220.132.xxx.xxx 未訂閱
用執行緒吧,站內搜尋就有一堆了.
------
yckuo
boson
中階會員


發表:74
回覆:155
積分:85
註冊:2004-07-31

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-03-28 19:22:40 IP:218.170.xxx.xxx 訂閱
讓 User 端直接連線到 SQL Server, 並不是一個好主意,
除了效能會極差之外, 安全性更是一大問題

如果能在 User 與 SQL Server 之間加一層程式(變成三層架構), 可以讓 800 個 connection 降為只剩一個,
這樣效能會極大幅度地提高, 安全性也高, 同時系統也不容易發生問題
不妨考慮一下

vernalee
一般會員


發表:5
回覆:3
積分:1
註冊:2004-06-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-03-30 10:01:52 IP:61.56.xxx.xxx 訂閱
與主管討論後,決定採用寫ini+檔案加密方式來處理,這樣就不會有SQL connection的作業,僅需將檔案上傳至FTP目錄中即可。

但想到一個狀況,因user端的執行作業採排程方式,於程式首次執行時對照user的單位進行設定。但若遇到不定時須更改排程時間,或臨時要特定單位執行排程時,應如何處理,才可很簡單的更新user端排程時間設定呢 (最好是可以自動執行,不需user手動更新)?
系統時間:2024-05-14 13:45:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!