斷點續傳簡明二次開發以及測試手冊_第1頁
斷點續傳簡明二次開發以及測試手冊_第2頁
斷點續傳簡明二次開發以及測試手冊_第3頁
斷點續傳簡明二次開發以及測試手冊_第4頁
斷點續傳簡明二次開發以及測試手冊_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1 二次開發接口導入com.ibm.mqtrans. mqtransinterface類、com.ibm.mqtrans.model.transinfo類、com.ibm.mqtrans.model.transinfo,com.ibm.mqtrans.model .recevefiledata類com.ibm.mqtrans. mqtransinterface類提供了以下幾個接口方法:initfromconfig(string configfilename)此方法是靜態方法,在調用mq斷點續傳接口時僅僅需要調用此接口一次configfilename:是所需要的配置文件的絕對路徑名方法:int

2、sendfile(string absolutfilename,string receivername,transinfo transinfo)發送文件到mq服務器中。參數:absolutfilename:要發送的文件名receivername:此文件的接收者,使用時請置nulltransinfo:存儲了發送的字節數目等信息,使用此方法時每使用一次請創建此對象一次。返回值:/* * -6:沒有足夠的可用線程來啟動分塊傳輸,請過段時間重試 * -5:沒有空閑的服務線程服務 * -4:要發送的文件不能夠讀取,不能夠繼續 * -3:要發送的不是文件 * -2:要發送的文件不存在 * -1:失敗 *

3、0:成功 * 1:無法取得與mq隊列管理器的連接 * 2:與mq隊列管理器的連接無效,即出現網絡失效錯誤 */方法:list getreceivefilelist(string receivername,int count) 從mq服務器中取得可以下載的文件列表參數: receivername:接收者,使用時請置null count:需要此接口的返回數目,如置上50返回值: 返回能夠接收的文件列表對象,此列表包含recevefiledata對象recevefiledata對象的定義:msgid:唯一標志能夠接收的文件idchunkcount:此文件被分成幾段上傳的,也就意味著將分成幾段同時下載

4、filelength:此文件的長度desc:此文件的描述信息,此信息的格式為:主機名+:+ip地址+:+文件名;tradecode:需要調用外部類的交易id,現在不支持方法:string recvfile(recevefiledata recevefiledata,string dirname,string receivername,transinfo transinfo,list errorlist)接收文件,調用此方法前 需要先調用getreceivefilelist參數:recevefiledata:調用getreceivefilelist方法返回的list中對應的對象,指明需要下載的文

5、件dirname:指定下載下來的文件需要存放的路徑transinfo: 存儲了接收的字節數目等信息,使用此方法時每使用一次請創建此對象一次。errorlist:錯誤信息的一些列表,主要是對應分段下載有多個信息1.1 如何編譯和修改此系統此系統是采用java語言,eclipse ide環境實現,在相應的工程目錄中,src目錄是源代碼的目錄,lib 目錄是系統所需要的外部庫的目錄(需要把這個目錄中相應的jar文件加入到eclipse環境中)。jdk需要1.5。當然用jdk1.4.2也是可以進行編譯和測試的,不過建議使用jdk1.5。2 配置文件定義112 01 32trans.filedatafi

6、letrans.controlfiletrans.control.finishc:temp3 系統初始化1、 安裝mq服務器,并建立相應地隊列管理器(如testqm),并且建立一個偵聽器(如偵聽1414端口)。2、 接口的日志信息記錄是采用log4j庫,所以如果更改相應的日志記錄信息請修改log4j的配置文件3、 打開配置文件sysparamconfg.xml文件,找到queuename、filetranscontorlqueuename、filetranscontorlfinishqueuename三個節點修改相應的值或者不進行修改。并在隊列管理器中建立此三個節點對應的值的隊列名,(特別是需

7、要把filetranscontorlqueuename針對的最大深度值改大,如改成5千萬)。示例:我們在總公司端安裝了mq服務器,下面大概有31個分公司需要往總公司端傳送數據。我們可以把這31家分公司按照一定的規則劃分如下所示:| 華北(nc.qm 1414) |北京分公司|天津分公司 | | | 華東(ec.qm 2414) | | |上海分公司 | | | 浙江分公司 | |江蘇分公司 | | |華南(sc.qm 3414) | | |廣東分公司|其它(other.qm)針對華北地區建立一個隊列管理器如nc.qm,其它幾大地區類似,并且監聽不同的端口號,如華北的1414,華東的2414等;

8、然后對每個地區如華東地區,由于上海、浙江、江蘇這三家分公司的數據量都差不多,而其它分公司較少,所以我們對上海、浙江、江蘇這三家分公司建立不同的隊列來存放相應地數據(queuename、filetranscontorlqueuename、filetranscontorlfinishqueuename三個節點對應的數據每個分公司都不一樣,如上海分公司為sh. trans.filedata, sh.filetrans.control, sh.filetrans.control.finish.浙江和江蘇的都是類似,并且對于每個分公司都在服務端啟動一個java進程來進行相應的接收工作)。4、 打開配置文

9、件sysparamconfg.xml文件,找到msgpersist節點,把此節點的值改成1的話將啟用mq消息持久性,傳輸性能將下降1倍左右,但是在多個隊列管理器組織成分布式隊列管理器的時候請設置為1。5、 打開配置文件sysparamconfg.xml文件,找到controlmsgpersist節點,把此節點的值改成1,請不要把這個字段才成其它值。6、 打開配置文件sysparamconfg.xml文件,找到msgsize節點,可以修改此節點的值,如在帶寬降低的情況下,這個值可以改小如4k/8k。7、 系統提供了相應的發送接口和接收接口,可以在接收接口的基礎上開發一個模塊,此模塊定時如每個10

10、0毫秒,調用一次getreceivefilelist獲取能夠下載的文件列表,然后可以根據相應的需要 啟動多個線程或者就啟動一個線程,每個線程調用recvfile進行收取(當然線程也不需要啟動過多)。8、 要運行系統請修改sysparamconfg.xml 文件mqparamset節點對應的連接信息。4 測試編寫了兩個客戶端,一個是發送客戶端和一個是接收客戶端,啟動的腳本分別是startsendtest.cmd和startrecvtest.cmd。這個客戶端也是系統的測試程序,也是此系統接口調用的例子程序。如何啟動這兩個客戶端呢?1 請從網站下載sun公司的最新版本的jdk1.5.2 修改set

11、env.cmd這個文件中的set java_home=c:program filesjavajdk1.5.0_06 這個java_home指向你安裝jdk1.5的目錄 3. 找一臺機器安裝mq server你可以修改可執行程序目錄中的classes目錄perties中相應地字段的值,使此接口輸出的日志指向你所需要的路徑 可以修改sysparamconfig.xml這個配置文件,來修改你要連接的mq服務器的地址和名稱,也可以修改這個配置文件相應地值來更改此程序的行為(如修改msgsize字段來決定發送的消息大小和修改msgpersist字段來使接口是否啟用持久性消息)4.1 發送測試此測試客戶端可以演示網絡中斷,客戶端進程被突然殺死,mq服務器突然當掉這些異常情況出現的斷點續傳。啟動startsendtest.cmd腳本1.啟動后程序界面:2點擊選擇文件,來選擇你所需要發送的文件和目錄3點擊開始上傳按鈕,程序將顯示相應地信息(如進度條,速率等信息)在這個途中,你可以拔掉網線,殺死這個進程,殺掉mq server進程,來測試發送的斷點上傳。4.2 接收測試此測試客戶端可以演示網絡中斷,客戶端進程被突然殺死,mq服務器突然當掉這些異常情況出現的斷點

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論