問題タブ [vertx-verticle]

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 投票する
0 に答える
638 参照

reactive-programming - 複数のインスタンスを実行する場合の VertX eventbus.publish

VertX がイベント バス パブリッシング (eventbus.publish) をサブスクライブしたすべての verticle のすべてのインスタンスに展開することに気付き始めています。しかし、特定のアドレスに eventbus.send を使用すると、そのメッセージは対象のバーティクルの単一のインスタンスに配信されます。私の要件は、メッセージをパブリッシュして、すべてのサブスクライバー verticle の単一のインスタンスに配信する機能です。

簡単に言えば、メッセージを発行し、特定のサブスクライバーの 1 つのインスタンスだけを除いて、すべてのサブスクライバーが受信したことを確認します。

これを処理するために中間コンポーネントを構築できますが、これを解決するためのすぐに使えるオプションを探しています。

PSこれをクラスターモードでも、バーティクルごとに1つのドッカーで試してみましたが、結果は同じです。

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

java - Vertx worker verticle の書き方 - 無期限のブロッキング操作?

次のクラスは、events-config という名前のチャネルでイベント バスからメッセージを受信するときにブロック コードを実行するワーカー バーティクルです。

目的は、events-config チャネルで停止操作メッセージを受信するまで、json メッセージを無期限に生成して公開することです。

目的の機能を実現するために executeBlocking を使用しています。ただし、ブロック操作を無期限に実行しているため、vertx はスレッドチェッカーのダンプ警告をブロックしました。

質問:
- 特定のバーティクルに対してのみ、blockedthreadchecker を無効にする方法はありますか??
- 以下のコードは、必要に応じて vertx で無限ループを実行するベスト プラクティスに従っていますか? そうでない場合は、これを行うための最良の方法を提案できますか?