0

これが適切な場所であるかどうかはわかりませんが、ロジックアウトを個々のサービスに分離して、ほぼプラグアンドプレイタイプのシナリオを可能にする「概念的な」モジュラー設計アーキテクチャを考え出しました。サービス。機能のリストを考えて、必要なものだけを有効にします。

これを容易にするために、これらすべてを接続してデータの流れを制御する何らかのタイプのミドルウェアが必要になることに気付きました。ただし、これを達成するために何が適切かについての詳細はわかりません。

.NET SOAP ベースのサービスを使用してサービスを実装する予定ですが、これは Tibco のようなものを使用するケースですか?

何が最も適切であるか、またはどこから探し始めるかについての提案は素晴らしいでしょう.

ここに画像の説明を入力

上記の説明が意味をなさない場合、うまくいけば、この画像はサービス間の関係を説明する際に少し明確になります.

ありがとう。

4

1 に答える 1

0

必要に応じて、NServiceBus ( http://particular.net/nservicebus ) を使用できます。NServiceBus は、MSMQ、RabbitMQ などのさまざまな種類のキューイング システムで使用できる通信ミドルウェアです。これは基本的に、開発者にとって非常に使いやすく、焦点を絞ったサービスバスです。これは、非同期メッセージ ベースの分散通信を促進するだけでなく、次のことも行います。

  • 自動登録を使用した、トランスポートに依存しないパブリッシュ/サブスクライブ
  • トランスポート: MSMQ、RabbitMQ、Azure ストレージ キューなどで使用できます。
  • セキュリティ: メッセージの暗号化をサポート
  • BLOB: データ バスを使用して透過的に大きなメッセージ ペイロードを格納するためのサポートがあり、トランスポートが許可するよりも大きな通信メッセージを許可します。
  • スケーラビリティ: アウトおよびアップスケーリングによるスループットの向上
  • 信頼性: 重複排除、分散トランザクションなしのべき等処理。
  • オーケストレーション: Sagas は、メッセージ フローとルーティングの制御に役立ちます。
  • 例外処理: 例外は、2 つの異なる段階で自動的に再試行されます。
  • 監視: サービス パルス、サービス インサイト、Windows パフォーマンス モニターなどのツールで、パフォーマンスとエラーを監視します。どのようなエラーが発生したかを確認し、
  • シリアライゼーション: xml、json、binary などのフォーマットをサポートするさまざまなシリアライザーを使用できます
  • オープン ソース: すべてのソース コードが利用可能
  • 監査: アーカイブまたは監査要件のために、処理されたすべてのメッセージを監査キューに移動できます。
  • コミュニティ: フォーラムで活動している開発者の大規模なコミュニティがありますが、追加のトランスポート、シリアライザー、およびその他の機能も提供しています。

私は特定の会社で働いていますが、考慮すべき他のオプションがあることにも言及する必要があります。NServiceBus は、メッセージ交換に SOAP を使用しませんが、シリアライゼーションの箇条書きで述べたように、選択した形式の軽量メッセージを使用します。SOAP を必要とするサービスと統合できます。サービス (エンドポイント) を WCF サービスとして公開して統合を容易にする機能があり、コード内から SOAP を使用して、.net フレームワークとビジュアル スタジオが提供する機能を使用して外部 SOAP サービスを呼び出すことができます。

プロジェクトに適したテクノロジを選択してください。

于 2015-05-19T18:36:14.913 に答える