0

SQL 2012 データベース サーバーを activemq にリンクするためのベスト プラクティスを教えてください。

私が達成したいのは、データベースで何かが変更されるたびに、データベースで発生した変更を含むメッセージでativemqが更新されることです。

1.データベースでどのようにコーディングすればよいですか(トリガーのように?)。2.activemq へのデータの送信方法を教えてください。Java アプリのようなインターフェイスは必要ですか?

4

1 に答える 1

0

データベースでそれをしないでください。アプリでそれを行います。

SQL Server は ActiveMQ サーバーに接続してメッセージを送信できる CLR プロシージャをホストできますが、そうするのはお勧めできません。

はるかに優れた解決策は、独自の DB にローカルでキューに入れることです。テーブルをキューとして使用するか、Service Broker キューを使用します (ちなみに、これはActivationをサポートしています)。次に、別のリスナー プロセスから、代わりにコミット後にこのローカル キューを処理します。可用性の向上、結合の減少、スループットの向上。ActiveMQ が本当に必要な場合は、少なくともローカルの中間キューが可用性を切り離します。各 DB 操作が外部の ActiveMQ XA 登録操作を待機すると、スループットが大幅に低下し (DTC遅い)、可用性の問題に対処する必要があります (ActiveMQ と XA が利用できず、DB で更新が行われない)。

于 2013-09-05T09:16:28.807 に答える