この記事では、Spark メッセージングで使用するキューの作成と管理について説明します。開発者ポータルで Spark メッセージングの詳細をご確認ください。
Spark キュー管理へのアクセス
管理者 > 接続 > Spark キューからキューの表示と管理を行います。キューを設定するためには、管理者: キュー権限が付与されたセキュリティプロファイルを持っている必要があります。
Spark キューの作成方法
新規キューを作成するには:
- Spark キューページから、作成をクリックします。
- このキューのラベルを入力します。これは、Vault UI の管理者に表示されるラベルです。
- Vault は名前フィールドに自動入力します。これは、Vault Java SDK コードからコールされた際のキューの名前です。小文字、英数字、文字間のアンダースコア 1 文字 (_) のみが許可されます。
- このキューのステータスを入力します。アクティブなキューのみがメッセージを受け取ることができます。
- 任意の作業: このキューに説明を入力します。
- キュータイプを選択します。このキューにメッセージを送信させたい場合は、送信を選択します。このキューにメッセージを受信させたい場合は、受信を選択します。
- キュータイプが受信の場合は、Spark メッセージプロセッサを選択します。これらは、メッセージを処理するために設計された Vault Java SDK で作成されたカスタムの Vault 機能拡張です。管理者 > 接続 > Spark メッセージプロセッサで、お使いの Vault で使用可能な Spark メッセージプロセッサの詳細をご確認いただけます。
- キュータイプが受信の場合は、Spark メッセージプロセッサユーザを選択します。これは、このキューにデリバリされたメッセージを処理するユーザです。
- 任意の作業: キュータイプが送信の場合は、Spark メッセージデリバリイベントハンドラと Spark メッセージデリバリハンドラユーザを選択します。詳しくは、開発者ポータルで Spark メッセージデリバリイベントハンドラをご覧ください。
- 任意の作業: このキュー向けのメッセージを連続で処理する、つまり受信する順に処理する場合は、順次メッセージ処理を選択します。これは、キューにメッセージが蓄積されてデリバリが遅れるため、通常推奨されていません。
- 任意の作業: メッセージがキューに入れなかった場合にこのキューのトランザクションを継続したい場合は、エラーのロールバックの選択を外します。この選択を外さなかった場合、このキューへのメッセージ配置失敗により、全トランザクションがロールバックされます。
- 保存をクリックします。
キューを作成した後に、キュー接続を追加したい場合があります。詳しくは、接続の作成をご覧ください。
キュー接続の管理
キューが接続にアタッチされている場合は、キューの詳細ページのキュー接続セクションに表示されます。このセクションには、接続タイプ、URL、および接続名などキュー接続に関連する様々な詳細情報が表示されます。
詳細ページのアクションメニューから、さらにキュー接続を作成したり、このキューの既存の接続を表示、編集、および削除したりできます。
Spark キューを無効化する方法
Spark キューのメッセージ受信を停止したい場合は、キューのステータスを無効に設定する必要があります。無効にすると、キューは新規メッセージを受信できなくなります。
これによって、キューに既に存在するメッセージが処理されないようにすることはできません。例えば、キューを無効化する前に送信キューにメッセージがあったら、それらのメッセージは送信されます。キューに既に存在するメッセージの送信を停止したい場合は、デリバリを無効化する必要があります。
キューを無効化するには:
- キューの詳細ページで、編集をクリックします。
- ステータスを無効に設定します。
- 保存をクリックします。
アクティブでないキューが直ちにメッセージの受け取りを停止します。このキューを再度有効化したい場合は、同じ手順で行います。キューがアクティブになったら、再度メッセージの受け取りを開始します。
デリバリを無効化する方法
送信 Spark キューによる既存のメッセージのデリバリを停止したい場合は、キューを無効化する必要があります。これにより、メッセージがキューから出るのを防ぎますが、新しいメッセージがキューに入るのを防ぐことはできません。例えば、デリバリステータスが無効化に設定されたアクティブなキューでは、新規メッセージはキューに入れますが、キューから出ていくメッセージはありません。
キューを無効化するには:
- デリバリを無効化したい送信キューに進みます。
- アクションメニューからデリバリの無効化を選択します。
- これでキューが無効化されます。キューの詳細で、デリバリステータスが無効と表示されます。
このキューのメッセージのデリバリを再開したい場合は、同じ手順でキューを有効化します。
受信キューの処理ではメッセージをデリバリするのではなく、メッセージを受け取るため、このオプションは受信キューには使用できません。既存のメッセージの処理から受信キューを停止する方法はありません。処理したくない既存のメッセージが受信キューにある場合は、キューのリセットが必要です。
Spark キューのすべてのメッセージを削除する方法
キューのステータスまたはデリバリステータスを変更しても、キューのメッセージは削除されません。例えば、デリバリステータスが無効に設定されたアクティブでないキューは、メッセージの送受信はできませんが、キューのメッセージは残ります。これらのメッセージが不要になったらキューをリセットすることができます。
このアクションは永続的で取り消すことはできません。
キューをリセットするには:
- リセットしたいキューに進みます。
- キューのリセットをクリックします。
- 警告を読んだら続行をクリックします。
- 処理が完了したら、Vault が正常にキューをリセットしたことを告げるシステムメッセージが緑色のバナーで表示されます。