OpenLegacy RabbitMQ コンシューマの使用方法
これは RabbitMQ コンシューマ/プロデューサ API を構成する基本例です。
特定の使用ケースに必要な場合は、OpenLegacy にご連絡ください。
前提条件:
メインフレーム CICSの ItemDetails SDK
テンプレート RabbitMQ コンシューマプロジェクト
例えば、以下のステップに従って、RabbitMQ 管理コンソールで RabbitMQ キューおよび交換を構成します。
キュータブ → 新しいキューを追加へ移動します。
名前: test.dead-letter.queue
別の新しいキューを追加します。
名前: test.incoming.queue
引数: test.exchange
x-dead-letter-routing-key
= test.dead-letter
別の新しいキューを追加します。
名前: test.outgoing.queue
交換タブ → 新しい交換を追加へ移動します。
名前: test.exchange
test.exchange へ移動します。
交換で入力キューと出力キューをバインドします。
この交換からバインド → バインドの追加へ移動します。
キューへ: test.incoming.queue
ルーティングキュー: test.in
この交換から別のバインドを追加します。
キューへ: test.outgoing.queue
ルーティングキュー: test.out
RabbitMQ の OpenLegacy ソリューションの使用方法:
IDE に従って、テンプレート → プロジェクト作成 → maven → orchestration-rest-pom.xml.ftl へ移動し、バージョンを変更します。
上で説明したテンプレートに基づき、API プロジェクトを作成します。
API プロジェクトフォルダ → SDK から API の生成を右クリックします。
SDK のエンティティからサービスを作成します。各新しいサービスに追加入力フィールドを追加する必要があります - このフィールドがサービスキーフィールドです。デフォルト値として「メソッド」を使用します。つまり、メソッドという名前の文字列フィールドに追加する必要があります。
5.OL 構成を設定します。
ol:
# OpenLegacy Common Properties (OLCommonProperties) #
common:
cache:
enabled: true
license:
# RabbitMQ Properties (RabbitMqGlobalConsumerProperties) #
rabbitmq:
global-consumer:
consumer:
from-queue: test.incomming.queue # for example
producer:
exchange: test.exchange # for example
routing-key: test.out # for example
service-key: method
6.Spring Boot の設定 - RabbitMQ 構成(必要に応じて):
# Spring boot RabbitMQ Properties #
spring:
rabbitmq:
host: <YOUR HOST ADDRESS>
port: <port number>
username: <USERNAME>
password: <PASSWORD>
listener:
simple:
# In order to 'dead-letter' messages.
default-requeue-rejected: false
#Number of consumers
concurrency: 3
#Retry configurations
retry:
enabled: true
max-attempts: 4
initial-interval: 10000
7.完了。
RabbitMQ 管理コンソールによるメッセージの公開方法:
関連 RabbitMQ 交換 → メッセージ公開へ移動します。
ルーティングキー: test.in
ペイロード:
2. {
3. "method": "item",
4. "itemNum": "1000"
5. }
サービスキーフィールドへの追加が重要です。上の例では、「メソッド」です。このフィールドの値はアクティブ化するサービスである必要があります。メッセージを公開後、キューが入力され、OpenLegacy 使用者によって使用されます。