共用方式為


佇列處理的優點

設計新的應用程式時,開發人員必須考慮編碼元件對於即時(同步)處理與佇列(異步)處理的影響。 選擇取決於基礎商業規則所決定的特定應用程式需求。 作為指導方針,佇列處理比實時處理提供下列優點:

  • 降低對元件可用性的相依性
  • 較短的元件存留期
  • 使用中斷連線的應用程式時,不間斷的生產力
  • 訊息可靠性
  • 有效率的伺服器排程

元件可用性

在即時處理應用程式中,如果只有一個交易元件無法使用,可能是因為伺服器多載或網路問題,則整個進程會遭到封鎖且無法完成。 相反地,使用 COM+ 佇列元件服務的應用程式會將交易分成現在必須完成的活動,以及稍後可以完成的活動。 例如,訊息可以排入佇列以供稍後處理,讓要求元件可供其他工作使用。

元件存留期

使用佇列元件服務的應用程式可讓伺服器元件獨立於客戶端運作。 因此,伺服器元件可以更快速地完成。 在即時系統中,伺服器元件會從建立到對象最終釋放為止存在。 伺服器會等候客戶端進行方法呼叫,並傳回結果,這會否定伺服器物件的快速迴圈,並限制伺服器延展性。

中斷連線的應用程式

越來越多的膝上型計算機、筆記本和棕櫚計算機使用已建立應用程式的需求,應用程式偶爾會中斷用戶端或行動使用者的連線。 在已排入佇列的系統中,這些使用者可以繼續在中斷連線的情況下或未連線到伺服器時運作,而稍後可以連線到資料庫或伺服器來處理其要求。 例如,銷售人員可以從客戶取得訂單,稍後再連線到貨運部門來處理這些訂單。

如果您有可以執行已連線或中斷連線的元件,訊息會以單一方向移動,而且很少需要來回切換。 例如,在訂購案例中,出貨元件會收到訊息並加以處理。 它可能會產生另一個用於計費或稽核的元件。 用戶端會在伺服器開始之前認可。 在應用程式認可之前,不會傳送訊息。

下圖顯示中斷連線案例中的資訊流程。

Diagram that shows teh flow of information between the client and server.

訊息可靠性

消息佇列是一個功能強大的工具,使用資料庫技術來協助以健全的方式保護數據。 發生伺服器失敗時,消息佇列可確保交易會回復,讓訊息不會遺失,而且數據不會損毀。

伺服器排程

使用佇列元件的應用程式非常適合時間移轉的元件執行,它會將不關鍵的工作延遲到離峰期間。 這是套用至傳統批次模式處理的相同實用概念。 伺服器可以延遲類似的要求,以便連續執行,而不是要求伺服器立即回應各種不同的要求。