問題タブ [publish-subscribe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1658 参照

qt - Qtでメッセージバスをシミュレートする方法は?

簡単なメッセージバスを実装する必要があります。

  • したがって、1つのプロセスだけでD-Busを実行する必要はありません。
  • 型指定されたイベントのパブリッシュ/サブスクライブ(QObjectsの場合もあります)

QSignalMapperを使用して「名前付きイベント」にタグを付けてから、スロットから再送信するか、パブリッシャーのシグナルをサブスクライバーのシグナルに接続することを考えていました...

何か提案はありますか?それとも、比較的シンプルなデザインパターンを選ぶべきですか?

PS:Windows上のD-BusのAFAICSは、Qtで動作させるために「サードパーティ」ソフトウェアをインストールする必要があります。

0 投票する
2 に答える
899 参照

client-server - 進行中の 4GL のクライアントを介したパブリッシュ/サブスクライブ

Progress 4GL のネットワーク内のクライアント間にパブリッシュを配置する方法はありますか。

(醜い)方法は、データベースに「公開」(書き込み)し、すべてのクライアントがデータベースをポーリングできるようにすることですが、もちろんそれは避けたいと思います。

私は進行中の OpenEdge リリース 10.0B02 を使用しています。

0 投票する
2 に答える
2302 参照

google-app-engine - App Engine にライト pub-sub サービスを実装するにはどうすればよいですか?

Brett Slatkin は、Google I/O 2009 の「App Engine でのオフライン処理: 今後の展望」プレゼンテーション (ビデオスライド) で、Task Queue サービスについて説明しています。

彼は次のように述べています

Pub-Sub システムはトランザクションを最大化し、分離します:

  • 1 秒あたりの多数の小さなトランザクション
  • レシーバーの変更による 1 対多のファンアウト
  • 保証された順序付け、フィルタリング、2 フェーズ コミット

そして具体的に強調する

新しい API は、pub-sub ではなくキューイングを実装します


これらの機能のサブセットのみに興味があります。

  • 1 対多のファンアウト変化選択/固定された内部レシーバ ハンドラ
  • 注文保証、フィルタリング、2 フェーズ コミット

的を絞った目標は、同じ Web アプリケーションの異なるモジュール間での通知/メッセージの公開を容易にすることです。使用シナリオの例は次のとおりです。

  • 請求書の受領を支払いモジュールに認識させる。
  • ユーザーがフォロー/スターを付けた特定のドメイン オブジェクトの変更を追跡できるようにする。

これらを Task Queue サービスの上に実装する正しい方法は何でしょうか?

0 投票する
1 に答える
302 参照

biztalk - Biztalkクライアント定義のサブスクリプションアイテム

私は、クライアントアプリケーションが、ユーザーのアクセス許可に応じてイベントメッセージの特定のサブセットのみをサブスクライブして受信することを要求するBiztalkソリューションを設計しています。サブスクリプションは、トピックまたはコンテンツベースのルーティングを通じて行われます。クライアントは一度サブスクライブし、サブスクライブ解除を選択するまで多くのメッセージを受信します。

クライアントアプリケーションの数は数百に上り、サブスクライブされたトピックは定期的に変更される可能性があるため、受信者ごとにBiztalkから個別の送信ポートを定義することは実行可能なソリューションではありません。

個々のクライアントサブスクリプションを保持し、biztalkポートから送信されたメッセージを配信する追加のメッセージブローカーサービスを構築できると思いました。

また、受信者リストのパターンはオーケストレーションを使用して作成できることもわかりました。これは私にはまだ要求/応答パターンに従っているように見えますが、私は一方向のサブスクライブメッセージの後に多くの返されたイベントメッセージを受け取ります。

私のメッセージブローカーソリューションは、Biztalkの得意分野を倍増させているように思われるので、どこかで重要な機能が不足していると思います。誰かが以前にそのようなアプリケーションを試したことがあり、いくつかのポインタを与えることができますか?ソリューションとしてESBツールキットに投資する必要がありますか?私はネットを調べましたが、このタイプのトピックサブスクリプションモデルについては何もはっきりしていません。

ありがとう、フィル

0 投票する
2 に答える
1240 参照

javascript - JavaScript を使用した公開イベントの登録解除

ユーザーがウィジェットを動的に追加できる Web サイトがあります。これらのウィジェットは、Peter Higgins pub/sub プラグインを使用して、別の「コア」モジュールから$.(subscribe)のイベントを処理します。$.(publish)

次のような独自の名前空間にウィジェットがあります。

km.widget.name1、
km.widget.name2
など

したがって、によって作成されたハンドル$.(subscribe)はグローバルではありません。

ユーザーがカスタム ページからウィジェットを削除することを決定したときに、これらのウィジェットの登録を解除する方法がわかりません。

また、購読を解除するウィジェットをどのように知ることができますか?

0 投票する
2 に答える
1855 参照

nservicebus - NServiceBus pub/sub - メッセージはどこへ行った?

この NServiceBus プロジェクトをしばらくやっていて、PubSub で動作するようになったら、残りの時間を実際のワークフロー ロジックに費やしました。ただし、回避したい(または、正しく処理する方法を学びたい)深刻な問題が見られます。

パブリッシャーは、私が理解している限り、すべてのサブスクライバーのストレージ キューにメッセージをパブリッシュします。偉大な。しかし、サブスクライバーが実行されていない場合はどうなりますか (これに関する他の投稿を読みましたが、同じ質問をしていないようです)。

シナリオ - サブスクライバーが実行されていないときにパブリッシャーにメッセージをパブリッシュしてもらいます (サブスクライバーに中継されるように添付/要求されたメッセージ)。どこに行ったの?パブリッシャーは「ねえ、誰もこれをサブスクライブしていないので、わざわざ公開しませんか?」と言いましたか?それはそうすべきではなく、少なくとも1人のサブスクライバーが必要ですか?

誰でもこれに光を当てることができますか?(サービス初心者)

0 投票する
1 に答える
909 参照

security - WebsphereMQトピックとSSL

業界でのMQトピックの使用がどれほど一般的であるかを理解しようとしています。そして、SSLを使用したMQ?

みんなありがとう

0 投票する
1 に答える
6775 参照

.net - Websphere MQ トピック .NET API の使用

この記事を読みました

そして、トピックが MQ でどのように機能するかという概念をまだ理解していませんでした。JMS では、トピックにメッセージを発行できることを知っています。トピックからメッセージを受信するには、まずトピックにサブスクライブする必要があります (受信フェーズでサブスクリプション名を使用)。

MQ でどのように機能しますか? (JMSのように)簡単なシナリオを書きたい:

  • 1.トピックに公開する
  • 2. トピックからの受信 - 失敗します (まだ購読していません)
  • 3.購読する
  • 4. 受け取る - 公開後に購読したため、受け取るものは何もありません
  • 5.公開する
  • 6. 受信 - 成功

    サンプル コード (.NET) があると助かります

  • 0 投票する
    2 に答える
    442 参照

    nservicebus - NServiceBus のサブスクライバーの総数を取得するには?

    私は NServiceBus を使用しており、特定のメッセージ タイプにサブスクライブされているクライアントの数を知る必要があります (サブスクライバーの名前がさらに重要です)。私は pub\sub シナリオで話しています。

    この情報を NServiceBus で取得することは可能ですか?

    どうも

    0 投票する
    2 に答える
    7797 参照

    .net - 二重バインド WCF アプリケーションでドロップされたクライアントを処理する

    Microsoft のサンプルであるDesign Patterns: List-Based Publish-Subscribe にほぼ従っている WCF アプリケーションで pub-sub モデルを使用しています。

    このサービスは と の概念を提供しsubscribe()ますunsubscribe()が、クライアントが停止したりチャネルに障害が発生した場合の状況でクリーンアップを処理するためのベスト プラクティスは何ですか? 現在、クライアントがサブスクライブすると、現在InstanceContextClosedおよびFaultedイベント (サービス ユーザーは PerSession インスタンス コンテキスト モードと netTcpBinding)にハンドラーをアタッチします。

    OnClientLostただし、ハンドラーはクライアントのサブスクライブを解除するだけです。

    1. 上記は良い方法であり、クライアントが二重通信を切断したときにすべての状況を捉えるのに十分なだけの堅牢性を備えていますか? それとも、サービスがクライアントとの通信を試みた時点で発生した例外を処理し、クリーンアップを処理する必要がありますか?
    2. クライアント コールバック ハンドラのサブスクライブを解除するだけでなく、特に障害が発生した場合にさらにクリーンアップを実行する必要がありますか?

    この質問は同様の質問を提起しますが、最終的には、サブスクライブおよび/またはサブスクライブ解除を呼び出すクライアント以外のケースに対する回答を提供しません

    ありがとう