Cloud Notificationsに関するよくある質問

一般的な質問

Oracle Cloud Infrastructure Notificationsサービスとは何ですか?

Oracle Cloud Infrastructure Notificationsは、大規模な多数のサブスクリプション・エンドポイントにメッセージをプッシュするフルマネージド出版-購読型サービスです。Notificationsは、メール、PagerDuty、Functions、HTTPS、Slack、およびSMSエンドポイントへのプッシュベースの通知をサポートしています。また、Oracle Cloud Infrastructure Monitoring and Service Connector Hubとの統合もサポートしています。

このサービスでは何ができますか。

Notificationsの最も一般的な用途は、MonitoringメッセージとService Connector Hubをサポートして、アプリケーション・アラートを送信することです。たとえば、トピックに通知を送信するようにOracle Cloud Infrastructure Monitoringアラームを構成することができます。EmailまたはPagerDutyを使用してトピックに登録すると、クラウド・インフラストラクチャの異常についてすぐに通知を受け取ることができます。別の実装としては、オラクルの電子メール・プロトコル統合を使用して、お客様のサービスに代わってNotificationsに特定の登録者にメッセージを送信させることができます。Notificationsでは、一般的なプロトコルおよびサードパーティとの統合がサポートされているため、パスワードのリセットからカレンダーのリマインダー、さらにショッピング・カートのナッジまで、幅広い用途にわたって、柔軟にサービスを切り離すことができます。

Notificationsはどのように機能しますか?

Notificationsでは、メッセージの公開者とメッセージの登録者が切り離されている出版-購読型フレームワークが使用されています。トピックとサブスクリプションを使用して、メッセージを公開するための通信チャネルを構築します。トピックは、サブスクリプションにメッセージを伝えるためのチャネルです。サブスクリプションは、サポートされているプロトコルのエンドポイントです。トピックにメッセージを公開すると、サービスによりそのトピックのすべてのサブスクリプションにメッセージが送信されます。

Notificationsの使用を開始するにはどうすればよいですか?

コンソール(ブラウザベースのインターフェイス)、REST API、またはCLIを使用して、Notificationsサービスにアクセスできます。利用可能なSDKのリストについては、ソフトウェア開発キットとコマンド・ライン・インターフェイスを参照してください。

NotificationsはOracle Cloud Infrastructureで利用可能な他のメッセージング・サービスと比較してどうですか?

Oracle Cloud Infrastructureは、イベント配信用に次のメッセージング・サービスを提供しています。

  • ストリーミング
  • 通知

これらのサービスには、いくつかの類似点がありますが、それぞれ異なる用途に対応しています。

  • Notificationsの用途として最も多いのは、登録済みの関心のある登録者に通知を送信することです。Notificationsは、リアクティブ・プログラミングで使用されます。このサービスは、「プッシュ」モデルを使用して通知を送信します。このため、更新を定期的にポーリングするオーバーヘッドがなくなります。
  • Streamingの用途として最も多いのは、大量の連続データを取り込み、それをすぐに使用できるようにすることです。Streamingサービスにより、ストリーミング・データの取り込み、保持、および迅速な再生を簡単に行うことができます。Notificationsとは異なり、Streamingでは保存されたデータを繰り返し再生できます。

主な概念

トピックとは何ですか?

トピックは、サブスクリプションにメッセージを伝えるためのチャネルです。

サブスクリプションとは何ですか?

サブスクリプションは、トピックのエンドポイントです。公開されたメッセージは、特定のトピックの各サブスクリプションに送信されます。現時点で、次のサブスクリプション・プロトコルがサポートされています。

  • メール:指定されたメール・アドレスにメッセージが送信されます。
  • HTTPS(PagerDuty):メッセージがPagerDutyに送信されます。
  • HTTPS(Webhook):メッセージがHTTPSエンドポイントに送信されます。
  • Slack:メッセージがSlackチャネルに送信されます
  • Oracle Functions:Oracle Functionを呼び出します
  • SMS:メッセージがSMS対応の電話番号に送信されます

メッセージとは何ですか。

トピックに公開されるコンテンツです。各メッセージは、サブスクリプションごとに少なくとも1回配信されます。メールとして送信されるすべてのメッセージには、関連するトピックの登録を解除するリンクが含まれています。

特長と機能

Notificationsはどの機能をサポートしていますか?

  • メールやPagerDutyなどの複数のエンドポイント統合およびメッセージング・プロトコルをサポート
  • メッセージの耐久性を保証するフルマネージド・サービスによる拡張性
  • 少なくとも1回配信するインテリジェントな再試行ロジック
  • Identity and Access Managementに対するセキュリティ・サポート
  • サブスクリプションの管理

このサービスは現時点でどの通知プロトコルをサポートしていますか。

Notificationsはメール、PagerDuty、Functions、HTTPS、Slack、SMSをサポートしています。

Notificationsで利用可能なAPI操作は何ですか。それらの説明はどこにありますか。

サポートされている操作と詳しい説明については、以下を参照してください。

  • 以下のAPI操作を使用して、トピックを管理できます。
操作 説明
createTopic 指定されたコンパートメントにトピックを作成します。
getTopic 指定されたトピックの構成情報を取得します。
listTopics 指定されたコンパートメントに含まれるトピックをリストします。
updateTopic 指定されたトピックの構成を更新します。
deleteTopic 指定したトピックを削除します。
  • 以下のAPI操作を使用して、サブスクリプションを管理します。
操作 説明
createSubscription 指定されたトピックのサブスクリプションを作成します。
deleteSubscription 指定されたサブスクリプションを削除します。
listSubscriptions 指定されたコンパートメントまたはトピックに含まれるサブスクリプションをリストします。
getSubscription 指定されたサブスクリプションの構成情報を取得します。
updateSubscription 指定されたサブスクリプションの構成を更新します。
getConfirmSubscription 指定されたサブスクリプションの確認の詳細を取得します。
resendSubscriptionConfirmation 指定されたサブスクリプションの確認の詳細を再送します。
getUnsubscription 指定されたサブスクリプションの登録解除の詳細を取得します。
  • 以下のAPI操作を使用して、メッセージを公開します。
操作 説明
publishMessage 指定したトピックにメッセージを公開します。

トピックに公開された後のメッセージの耐久性はどれくらいですか?

Notificationsトピックに公開されたすべてのメッセージに、リージョンでの耐久性があります。メッセージがトピックに公開されると、メッセージの公開者に確認応答を送信する前に、リージョン内の3つの可用性ドメインにメッセージが同期的に複製されます。

Notificationsはメッセージを保持しますか?

登録者のエンドポイントがメッセージの受信を認識しなかった場合、Notificationsサービスは配信を再試行します。現時点で、Notificationsサービスがメッセージを保持する時間は、メッセージがトピックに公開されてから最大2時間です。Notificationsサービスは、保持時間内にメッセージの配信を再試行します。

最大保持時間に達するとNotificationsはメッセージをドロップしますか?

はい。最大保持時間(2時間)に達すると、メッセージが配信されたかどうかにかかわらず、Notificationsはメッセージをドロップします。

受信者は何回通知を受け取りますか?

Notificationsは、サブスクリプション・エンドポイントに少なくとも1回メッセージを配信します。この実装では、重複が発生する場合があるため、受信者が重複する通知を処理することをお勧めします。

同じメッセージを単一のトピックを通じて複数のエンドポイントに公開できますか?

単一のトピックの複数のエンドポイントにメッセージを配信するようにNotificationsを構成できます。たとえば、Oracle Cloud Infrastructure Monitoringアラームをメール・アドレスまたはPagerDutyエンドポイントに同時に配信できます。

メッセージはトピックに公開された正確な順序で配信されますか?

Notificationsは、公開者からのメッセージをトピックに公開された順序で配信します。ただし、ネットワーク・パーティションの性質、インターネット接続の安定性、および一時的な障害のため、Notificationsがこの順序でメッセージを配信できないことがあります。

登録者がトピックに公開されたメッセージのサブセットのみを受信することはできますか?

現時点では、トピックに公開されたすべてのメッセージがそのトピックのすべてのサブスクリプション・エンドポイントに配信されます。登録者がメッセージのサブセットのみに選択的に登録することはできません。

トピックに公開した後にメッセージを削除できますか?

Notificationsトピックに公開した後でメッセージを削除することはできません。

Notificationsから送信されるメールの件名と送信者名を変更できますか?

PublishMessage API操作で件名をパラメータとして渡すことにより、各メッセージの件名の行を変更できます。現時点では、Notificationsから送信されるメールのデフォルトの送信者名を変更することはできません。

操作とトラブルシューティング

Notificationsの監視に使用できるメトリックは何ですか?

  • 使用できる主なメトリックは次のとおりです。
メトリック名 説明
公開されたメッセージ数 Notificationsに公開されたメッセージの数。
配信されたメッセージ数 正常に配信されたメッセージの数。
失敗したメッセージ数 配信されなかったメッセージの数。
公開されたメッセージのサイズ(バイト) 公開されたメッセージの合計サイズ。
配信されたメッセージのサイズ(バイト) 正常に配信されたメッセージの合計サイズ。
失敗したメッセージのサイズ(バイト) 配信に失敗したメッセージの合計サイズ。

通知が失敗した場合、どのように通知されますか?

Monitoringサービスを使用して、NumberOfNotificationFailedメトリックについてアラームを構成できます。詳細については、こちらを参照してください。

サブスクリプションのないトピックにメッセージを公開するとどうなりますか?

公開操作は成功しますが、それらに関心のあるサブスクリプションがないため、メッセージはドロップされます。

Notificationsはメッセージを保持しますか?

登録者のエンドポイントがメッセージの受信を認識しなかった場合、Notificationsサービスは配信を再試行します。現時点で、Notificationsサービスがメッセージを保持する時間は、メッセージがトピックに公開されてから最大2時間です。Notificationsサービスは、保持時間内にメッセージの配信を再試行します。

登録者と連絡が取れない場合はどうなりますか?

Notificationsがサブスクリプション・エンドポイントから確認応答を受信できなかった場合、Notificationsサービスは最大2時間メッセージの配信を再試行します。この状況は、エンドポイントがオフラインのときに発生する場合があります。たとえば、PagerDutyサービスがオフラインになっていることがあります。

セキュリティ

誰がトピックを作成できますか?

デフォルトでは、Oracle Cloud Infrastructureテナント管理者にトピックを作成する権限が付与されています。ただし、テナント管理者は、特定のユーザー・グループに対して、権限とポリシーを付与し、トピックを作成することを許可することもできます。詳細については、ポリシーを使ってみるを参照してください。個々のサービスについての具体的なポリシーの作成方法については、ポリシー・リファレンスを参照してください。Notificationsへのアクセスをグループに付与する一般的なポリシーについては、グループにトピックの管理を許可するグループにトピック・サブスクリプションの管理を許可するグループにトピックへのメッセージの公開を許可するを参照してください。

誰がトピックにメッセージを公開できますか?

デフォルトでは、トピックの所有者がメッセージを公開できますが、他のOracle Cloud Infrastructureユーザーに権限を与えることもできます。「グループによるトピックへのメッセージの公開の許可」を参照してください。

複数の公開者が単一のトピックに公開できますか?

トピックの所有者は、複数のユーザーまたはテナントに対してトピックに公開することを許可する明示的な権限を設定できます。デフォルトでは、トピックの所有者のみにトピックに公開する権限およびポリシーを調整する権限が付与されています。詳細については、グループにトピックへのメッセージの公開を許可するを参照してください。

誰がトピックに登録できますか?

テナント管理者またはトピックの所有者が登録者を追加できます。詳細については、Notificationsポリシーおよびサブスクリプションの管理を参照してください。

トピックの所有者はどのように登録者にアクセスを許可できますか?

トピックの所有者は、トピックへのサブスクリプション権限を登録者に付与できます。詳細については、通知公開に一般的なポリシーを参照してください。

誰がサブスクリプションを確認または拒否できますか?

メールの場合、登録者が追加されると、登録者にサブスクリプション確認URLが送信されます。サブスクリプションの確認および確認の再送信の詳細については、こちらを参照してください。

Notificationsでは、どのように公開者がサブスクリプション・エンドポイントにスパムを送信できないようにし、有効な登録済みの関心のある登録者にのみメッセージが送信されるようにしていますか?

登録者エンドポイントがスパム攻撃を受けないようにし、有効な登録済みのエンドポイントにのみメッセージが送信されるようにするために、Notificationsでは登録者からの明示的なオプトインが必要となります。

  1. テナント管理者またはトピックの所有者がエンドポイント・ユーザーを追加すると、すぐにNotificationsによりその登録者に確認メッセージが送信されます。
  2. 登録者は、エンドポイントで確認メッセージを受信したら、有効な応答を送信してサブスクリプション・リクエストを確認する必要があります。その場合にのみ、Notificationsはサブスクリプション・リクエストを有効とみなします。応答がない場合、そのエンドポイントに通知は送信されません。

NotificationsはAPI呼び出しをどのように認証しますか?

Notificationsの認証は、Oracle Cloud Infrastructure Identity and Access Management(IAM)サービスと統合されています。詳細については、こちらを参照してください。

登録者がメッセージの登録を解除するにはどうすればよいですか?

登録者は、次の方法でNotificationsトピックの登録を解除できます。

  • コンソールを使用するか、DeleteSubscription API操作を使用する
  • (メール登録者の場合のみ)Notificationsによって送信されたメールの本文にある登録解除オプションを使用する

制限

Notificationサービスにはどのような制限がありますか?

  • Notificationsの制限はリージョン・レベルで設定されていることに注意してください。
リソース 月額ユニバーサル・クレジット制 従量制またはプロモーション
トピック テナンシあたり50個(アクティブまたは作成中*) お問い合わせ
サブスクリプション トピックあたり10個(アクティブまたは保留中*)
テナンシあたり100個(保留中*)
お問い合わせ
追加のトピック/サブスクリプションについて、制限を引き上げるには、オラクルまでお問い合わせください
  • その他の制限は次のとおりです。
リクエスト制限
項目 サイズ
リクエストあたりのメッセージ・サイズ 64 KB
メッセージ配信レート制限
プロトコル 1分あたりの単一のエンドポイントへのメッセージ数
メール 60
HTTPS(PagerDuty) 10

Notificationsにはどのくらいのコストがかかりますか。

Notificationsの価格設定は、シンプルで直感的です。お客様は、メッセージ配信ごとに料金をお支払いいただきます。HTTPSの場合、お客様は1か月あたり100万件のメッセージごとに0.60米国ドルをお支払いいただきます。メールの場合、お客様は1か月あたり1,000件の送信メールごとに0.02米国ドルを支払います。SMSの場合、お客様は宛先の国に応じてSMS単価でお支払いいただきます。

Notificationsに無償枠はありますか。

Notificationsでは、Oracle Cloud Infrastructureのお客様が無償で開始できるように無償枠が導入されています。お客様は、1か月あたり100万件のHTTPSエンドポイントへのメッセージと1,000件のメール・メッセージを無償で配信することができます。

次のステップ

Notificationsがサブスクリプション・エンドポイントから確認応答を受信できなかった場合、Notificationsサービスは最大2時間メッセージの配信を再試行します。この状況は、エンドポイントがオフラインのときに発生する場合があります。たとえば、PagerDutyサービスがオフラインになっていることがあります。

次のステップ

Notificationsの詳細については、次の記事を参照してください。