問題タブ [spring-cloud-stream]
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.
spring-cloud-stream - パーティショニング - コンシューマー インスタンスの数は、プロデューサーによって提供されるパーティション カウントと常に一致する必要がありますか?
私の Producer application.properties には、
そして、私のコンシューマーapplication.propertiesは次のようになります
アプリを Pivotal Cloud Foundry にデプロイし、アプリを 2 つのインスタンスにスケーリングすると、2 つのキューが作成されることがわかります。それらは、接尾辞 -0 および -1 で交換にバインドされます。
ただし、これは、メッセージに -3 または -4 で終わるトピックが含まれている場合、それらのトピックにはバインディングが存在しないため、メッセージが失われることを意味します。コンシューマーを 4 つのインスタンスにスケーリングすると、期待どおりに動作します。
私の質問は、コンシューマー インスタンスをプロデューサーの partitionCount より少なくすることはできないのでしょうか? この場合、1 つまたは複数のキューに、交換への複数のバインディングがあります。
java - トランザクションを使用してプロセッサを作成し、Rabbit バインディングを使用して DLQ を作成するにはどうすればよいですか?
Spring Cloud Streams と Dataflow を学び始めたばかりで、重要なユースケースの 1 つを知りたいです。メッセージを受け取り、それを 5 回再送信して出力するサンプル プロセッサ Multiplier を作成しました。
5 番目の送信前に、このプロセッサがクラッシュすることがわかります。なんで?それができるからです(プログラムは例外をスローします)。この場合、Spring Cloud Stream で障害防止を実践したかったのです。
私が達成したいのは、入力メッセージを DLQ に戻し、前に送信された 4 つのメッセージを元に戻し、次のオペランドで消費されないようにすることです (通常の JMS トランザクションと同様)。プロセッサ プロジェクトで次のプロパティを定義しようとしましたが、成功しませんでした。
可能かどうか、また何が間違っているのか教えていただけますか? いくつかの例を挙げていただければ幸いです。
rabbitmq - Spring Cloud Stream RabbitMQ を使用した手動 ack
リスナーが手動で ACK を RabbitMQ に送信するシナリオをセットアップしようとしています。私はこれを私のapplication.propertiesに持っています
リスナーから ack を送信するにはどうすればよいですか? Manual Acknowledgment of Messages : Spring Cloud Stream Kafkaから、Kafka の場合は Acknowledgment オブジェクトを作成し、その中でacknowledge() を呼び出すことがわかります。RabbitMQ が同じことを行う例はありますか?
spring-cloud-stream - Spring Cloud Stream 動的シンク リスナー
私は SCS の使用を開始しており、次の使用例があります。
- ユーザーが HTTP セッションを開く
- サーバーは、ユーザーのセキュリティ属性に基づいて、シンク リスナーを作成するパーティションを動的に決定します。
- ユーザー セッションに固有のシンク/リスナーが作成され、チャネル パーティションに接続されます。
- メッセージは、http Websocket を介してブラウザ クライアントに転送されます。
- ユーザーがログオフするときは、チャネルのリスナーを破棄する必要があります。
リファレンス ドキュメントを読んでも、このような動的な構成とライフサイクル管理の理由はわかりません。これを達成する方法の手がかりはありますか?
java - Spring Cloud Stream は Websocket を介した RabbitMQ Stomp をサポートしていますか
Spring Cloud Stream (SpringBoot) を使用して RabbitMQ インスタンスと通信しています。
プロジェクトはAMQPを介して RabbitMQ に接続できますが、STOMPでは機能しません。誰でも知っています:ストンプがサポートされているかどうか、および設定方法は?(私のRabbitMQは61613ポートを開いています)
application.ymlファイルは次のようになります。
spring-cloud - 'bindingService' という名前の Bean の作成中にエラーが発生しました - Eureka & Bus AMQP
Hystrix を現在の spring-cloud および Netflix OSS マイクロサービス プロジェクトに統合しようとしています。
2 つの依存関係を持つ新しい Spring Boot バージョン 1.4.0.RELEASE プロジェクトがあります。
プロジェクトの起動時に、次の例外が発生します。
この例外は、Eureka と Bus AMQP の両方の依存関係が一緒にある場合にのみ発生します。
アプリケーションまたはブートストラップ .yml/.properties に構成セットがありません。
存在する唯一の Java クラスは、Spring Boot によって生成されたものです。
完全な POM:
完全なスタック トレース:
spring-cloud - カムデンリリースの問題に更新
Brixton.SR5からCamden.M1にアップデートしてみました。
consul と spring cloud stream でソフトウェアを実行しています。必要な追加の初期化ステップがあると思います。
これがポムの一部です