2009-02-04 57 views
8

我們正面臨使用IBM MQ over SFTP進行文件傳輸的選擇。我聽說過這種方法的優點,但我從來沒有看到任何人將它用於大型文件。用於文件傳輸的IBM MQ

所以主要問題:IMB MQ如何處理大文件傳輸(最大100 MB)?它穩定嗎?它是從大型機到UNIX服務器,如果它確實很重要。

非常感謝。

回答

8

我已經使用了MQ,文件大小爲8GB,沒有發生事故。您必須爲MQ分配足夠的空間來管理它們,但它可以工作。

+1

非常感謝!這正是我需要聽到的。 – user62564 2009-02-04 20:14:53

5

供應商一直在通過諸如WebSphere MQ之類的消息傳遞系統進行文件傳輸超過12年。我沒有使用IBM產品。然而,直到最近IBM才知道,轉售Metastorm的產品(品牌爲PM4Data),直到最近才以第一代產品進入市場。

我見過Metastorm Integration Manager所有時間處理太字節大小的文件;在WebSphere MQ中分解消息並執行緩衝區確認,以避免溢出消息隊列或執行大量MQ管理。使用郵件系統的文件傳輸與SFTP的

其他值得考慮因素包括:

  1. 前置和後置的數據移動處理 - 作爲一個網絡傳輸,SFTP移動數據(可進行文件傳輸產品通過WebSphere MQ)。要進行移動前處理或移動後處理,您必須編寫自己的監視,觸發器,錯誤處理等。通過消息傳遞空間進行文件傳輸的成熟供應商可爲您提供開箱即用的基礎架構。根據您的應用程序,它們也可以幫助
  2. 審計跟蹤 - SFTP提供的通常提供系統級日誌記錄。通常情況下,通過MQ提供文件集成的供應商具有更大的審計功能,包括數據前和數據移動處理。一些供應商還提供安全的基於Web的系統,以向授權用戶公開某些集成。
  3. 異常處理 - SFTP將提供同步錯誤消息,然後您可以編寫錯誤邏輯代碼。通過MQ提供文件集成的供應商經常提供異常功能,從「這裏是隊列中的消息,表示發生了問題......祝您好運」,以便內置到基於Web的控制檯甚至是BPM系統中。
  4. 將文件傳輸作爲服務處理 - 文件傳輸通常是大型業務流程的一部分。一些供應商利用這一點來鏈接文件傳輸,甚至讓他們與以人爲中心的流程進行協作,以提供點到點文件傳輸環境下的端到端可視性。此外,使用消息傳遞系統進行文件傳輸有助於將組織轉變爲更加實時的消息驅動方法。

我希望在您的評估中提供更多詳細信息。祝你好運!

+1

感謝您提供的信息,但其中大部分我已經聽過或閱讀過。我真的對我問的問題感興趣。 – user62564 2009-02-04 20:25:38

6

MQ本身提供程序之間基於消息的通信。您不能直接使用它來傳輸文件。人們在談論「通過MQ發送文件」通常意味着他們將自己編寫程序來讀取文件,通過MQ發送,從MQ接收並寫入另一個文件。這聽起來似乎很微不足道,但如果你想讓它變得健壯的話,它很快會變得非常複雜。不建議。

如果你想在你的文件傳輸中涉及到MQ,那麼你需要做的是使用一個坐落在MQ上的文件傳輸產品。有很多成熟的產品,我幾乎不知道什麼,以及正在積極開發並最近宣佈更新版本(7.0.1)的IBM本身的新產品(「Websphere MQ File Transfer Edition」)。

爲了回答您的具體問題,我個人使用WMQFTE將1000GB的文件從AIX機器傳輸到Windows機器,所以我不認爲您的「大型」100MB文件會成爲問題:-) 。我沒有像大型機那樣參與其中,但它是FTE的核心平臺。

+0

你說的是真的,我也看到了這個文件傳輸版本。當然這是最好的解決方案。不幸的是,我必須在相當僵硬的環境中工作,即使MQ消息的最大尺寸不斷增大也是一個很大的問題。安裝新產品不太可能獲得批准。謝謝。 – user62564 2009-05-13 15:15:24

+0

@未來人物:增加MAXMSGL是一個大問題有很好的理由。調整任何異步消息以同時處理非常大和非常小的消息是困難的或不可能的。您看到將MAXMSGL增加爲免費解決方案,並且由於價格的原因,FTE的可能性較小。但除了最偶然的用戶之外,像FTE這樣的產品實際上比試圖將100MB文件壓縮成調諧爲更小信息的管道上的單個消息更具成本效益。更多關於此這裏:http://www.ibm.com/developerworks/websphere/techjournal/0804_mismes/0804_mismes.html – 2010-07-03 03:25:22

0

在前面的答案之一,有followng聲明:

人在談論「通過MQ發送文件」往往意味着他們會寫程序本身從文件中讀取的,送過來MQ ,從MQ接收並寫入另一個文件。這聽起來似乎很微不足道,但如果你想讓它變得健壯的話,它很快會變得非常複雜。不建議。

理論上,「通過MQ發送文件」會很好,因爲當收件人從隊列中獲取(讀取)文件時,您會收到確認發送(CoD)消息。另一個好處是,當收件人從隊列中獲取(讀取)文件時,該文件將自動從隊列中刪除。

你也許知道上面(或類似)由MQFTE提供?