2010-01-13 146 views
4

我要創建一個WCF服務,將接受成千上萬的請求每隔5分鐘,每個請求通過一個小(1-5KB)的文本文件。WCF服務設計例如

該服務將通過該文件的內容到另一個組件,其將處理線和插入一些記錄到數據庫中。這一邊沒有太重的東西。

我需要幫助在以下幾個方面:

  • 哪個WCF配置我應該使用,這將使我的最佳效果?對服務的呼叫將來自互聯網,而不是內部局域網。
  • 該服務將接受請求,每5分鐘,這意味着我只有5分鐘處理下一個週期之前的所有請求。 MSMQ是最好的解決方案嗎?

任何在線的例子我能讀懂?

+1

您是否認爲您的服務每五分鐘接受一分鐘的電話? – Manu 2010-01-13 15:22:45

+0

我讀到這意味着有成千上萬的客戶,他們每五分鐘嘗試一次提供服務,但由於有這麼多,最終每分鐘會有數千個客戶? – Nate 2010-01-13 15:29:22

+0

內特是正確 這項服務將每隔5分鐘由數以千計的客戶端叫 – anon2009 2010-01-13 15:46:23

回答

1

爲了獲得最佳性能,我會認爲你是在談論更短的延遲。你應該選擇一個TCP傳輸,如net.tcp。本文檔可以幫助你決定Choosing a Transport

有關MSMQ部分:您會收到大量請求,剛開始5分鐘後處理它們?如果是,您的選擇是正確的:MSMQ將保留該請求隊列,並且可以異步處理它們。

+0

魯本斯, 處理時間將可能超過5分鐘,排隊我覺得是這裏唯一的解決方案..我的問題是,如果MSMQ是最好的選擇。 – anon2009 2010-01-13 15:47:50

+0

如果你已經有MSMQ的工作,是的,這是一個不錯的選擇。但是,您也可以通過將待處理項存儲在數據庫上來構建您的隊列機制。 – 2010-01-13 16:20:34

+0

我沒有準備好MSMQ,這是我主要關心的問題,從一開始。 存儲在數據庫中的項目是我最喜歡的選擇,因爲是乾淨的,易於實現,是我以前做過.. 8-) – anon2009 2010-01-13 16:34:44