雲端通知常見問題

一般問題

什麼是 Oracle Cloud Infrastructure Notifications 服務?

Oracle Cloud Infrastructure Notifications 是一種完全託管的公布-訂閱服務,可將訊息大規模推送到多個訂閱端點。「通知」支援對電子郵件、PagerDuty、函數、HTTPS、Slack 及簡訊端點的推播式通知,以及與 Oracle Cloud Infrastructure Monitoring 和服務連線器中心整合支援。

我可以使用這項服務做什麼?

「通知」最常見的使用案例是支援「監控」訊息和「服務連線器中心」,以傳送應用程式警示。例如您可以組態 Oracle Cloud Infrastructure Monitoring 警示將通知傳送到主題。當您藉由使用電子郵件或 PagerDuty 訂閱主題時,您會立即收到有關雲端基礎結構異常的通知。另一種實施方式是使用我們的電子郵件通訊協定整合,使 Notifications 代表您的服務向指定的訂戶傳送訊息。對於從密碼重設、行事曆提醒甚至購物車輕推等各種使用案例,Notifications 提供彈性支援最受歡迎的通訊協定和第三方整合使服務脫鉤。

通知如何運作?

通知使用公布-訂閱架構,其中訊息的公布者與訊息的訂閱者分離。您可以使用主題和訂閱設定用於公布訊息的通訊管道。主題是將訊息傳達給訂閱的管道。訂閱是受支援通訊協定的終結點。將訊息公佈給主題後,服務會傳送訊息到所有主題的訂閱。

我如何開始使用通知?

您可以使用控制台 (瀏覽器型界面) 或 REST API 或 CLI 存取 Notifications 服務。有關可用 SDK 清單,請參閱 軟體開發套件和命令行界面

通知與 Oracle Cloud Infrastructure 中提供的其他訊息傳遞服務相比結果如何?

Oracle Cloud Infrastructure 為事件傳遞提供以下簡訊服務:

  • 串流
  • 通知

儘管這些服務有相似之處,但是它們可以解決不同的使用案例:

  • 最常用的通知使用案例是傳送通知給已註冊、感興趣的訂戶,它用於反應式編寫程式。此服務使用“推”模型傳送通知,消除定期輪詢更新的管銷費用。
  • 最常見的串流使用案例是攝取大量連續數據,並立即供於消費。串流服務促進串流數據的攝取、保留和快速重播。有別於通知,串流允許重複性重播儲存數據。

關鍵概念

什麼是話題?

主題是將訊息傳達給訂閱的管道。

什麼是訂閱?

訂閱是話題的終結點。已公布的訊息會傳送給個別特殊話題的訂閱。目前支援以下訂閱通訊協定:

  • 電子郵件:訊息會傳送到指定的電子郵件信箱地址。
  • HTTPS (PagerDuty):訊息會傳送到 PagerDuty。
  • HTTPS (Webhook):訊息會傳送至 HTTPS 端點。
  • Slack:訊息會傳送至 Slack 通道
  • Oracle Functions :叫用 Oracle 函數
  • SMS :訊息會傳送至已啟用 SMS 的電話號碼

什麼是訊息?

發布到主題的內容。每個訂閱至少傳遞一次訊息。以電子郵件傳送的每則訊息都包含取消訂閱相關話題的連結。

特色與功能

通知支援哪些功能?

  • 多重端點整合和簡訊通訊協定支援如電子郵件和 PagerDuty
  • 可使用全面託管的服務縮放範圍,確保訊息的持久性
  • 智慧進入點邏輯至少傳送一次
  • 身份和存取管理的安全支援
  • 訂閱管理

此服務目前支援哪些通知通訊協定?

「通知」支援電子郵件、PagerDuty、函數、HTTPS、Slack 及 SMS。

通知的可用 API 操作是什麼?在哪裡可以找到文件?

以下操作獲得這裡更多的文件支援:

  • 使用這些 API 作業管理主題:
操作 說明
createTopic 在指定的隔離專區中建立話題。
getTopic 取得指定主題的組態資訊。
listTopics 列出指定隔離專區中的話題。
updateTopic 更新指定話題的組態。
deleteTopic 刪除指定的話題。
  • 使用這些 API 作業管理訂閱:
操作 說明
createSubscription 為指定的主題建立訂閱。
deleteSubscription 刪除指定的訂閱。
listSubscriptions 列出指定隔離專區或話題中的訂閱。
getSubscription 獲取指定訂閱的組態資訊。
updateSubscription 更新指定訂閱的組態。
getConfirmSubscription 獲取指定訂閱的確認詳細資訊。
resendSubscriptionConfirmation 重傳指定訂閱的確認詳細資訊。
getUnsubscription 獲取指定訂閱的取消訂閱詳細資訊。
  • 使用這些 API 作業發布訊息:
操作 說明
publishMessage 公佈訊息到指定話題。

訊息公佈給某話題後的持久性如何?

發布到「通知」主題的所有訊息在區域中會一直保留。將訊息公佈到某個主題時,將確認訊息傳送給訊息的公布者之前,此訊息將被同步複製到一個區域內的三個可用網域。

通知是否保留訊息?

當訂閱者的端點沒有確認收到消息時,服務會重試遞送,目前保留消息的時間為從消息發布到主題起的兩個小時內。此服務嘗試在保留視窗內傳遞訊息。

若達到最大保留時間時,通知會刪除訊息嗎?

有。無論訊息是否傳遞,一旦達到最大保留時間 (兩小時),通知都會丟棄該訊息。

接收者會收到多少次通知?

通知至少將訊息傳遞一次給訂閱端點。此項實施偶爾可能發生重覆情況,因此建議接收者處理任何重複的通知。

我可以透過單一主題將相同訊息公佈到多個端點嗎?

可將通知組態為將訊息傳遞到單一主題的多個端點。例如,您可以將 Oracle Cloud Infrastructure Monitoring 警報同時傳送到電子郵件信箱地址和/或 PagerDuty 端點。

訊息是否按照發佈到主題的確切順序傳遞?

通知按發佈到主題的順序傳遞來自發布者的訊息。但是由於網絡分區性質、網際網路連接的穩定性和短暫故障,通知可能無法按此順序傳送訊息。

訂戶只能接收發佈到某主題的訊息子集嗎?

目前發佈到某主題的所有訊息都傳遞到該主題的所有訂閱端點。訂閱者無法選擇性地訂閱訊息子集。

訊息發布到主題後我就可以刪除訊息了嗎?

訊息發布到「通知」主題之後,就無法刪除該訊息。

我可以變更通知傳送的電子郵件主題和寄件人名稱嗎?

您可以透過在 PublishMessage API 操作中將主題以參數方式傳遞來變更每則訊息的主旨列。目前您無法變更“通知”傳送電子郵件的預設寄件人名稱。

操作與故障排除

我可以使用哪些指標來監通知?

  • 您可以使用以下主要指標:
指標名稱 說明
發佈的郵件數 發佈到通知的訊息數。
傳遞的訊息數 成功傳送的訊息數。
失敗的訊息數 未傳遞的訊息數。
已公布訊息的大小 (位元組) 已公布訊息的總大小。
傳遞的訊息大小 (位元組) 成功傳送訊息的總大小。
失敗的訊息大小 (位元組) 未能傳遞的訊息的總大小。

通知失敗時如何通知我?

您可以透過監控服務在 NumberOfNotificationFailed 指標上組態警報,了解更多資訊請點擊這裡

如果我將訊息發佈到沒有任何訂閱的主題,該怎麼辦?

發佈操作成功,但是訊息被丟棄,因為沒有訂閱對其有興趣。

通知是否保留訊息?

當訂閱者的端點沒有確認收到消息時,服務會重試遞送,目前保留消息的時間為從消息發布到主題起的兩個小時內。此服務嘗試在保留視窗內傳遞訊息。

如果訂戶抽不出時間怎麼辦?

如果「通知」未從訂閱端點接收確認,服務就會嘗試重新傳遞訊息,最長達 2 小時。當端點離線時,可能會發生這種情況。例如,PagerDuty 服務可能處於離線狀態。

安全性

誰可以建立主題?

預設情況下,Oracle Cloud Infrastructure 租戶管理員有建立主題的權限。但是,租戶管理員可以授予權限和政策允許用戶群組也可以建立主題。有關更多資訊,請參閱政策入門。有關針對個別不同服務撰寫政策的特定詳細資訊,請參閱政策參考。如需允許群組存取通知的常見政策,另請參閱允許群組管理主題允許群組管理主題訂閱允許群組發布訊息到主題

誰可以發佈有關主題的訊息?

預設情況下,允許主題擁有者發布訊息,但可為其他 Oracle Cloud Infrastructure 用戶授予權限。請參考允許群組將訊息發布到主題

多位發佈者可發佈一個主題嗎?

主題擁有者可以設定明確的權限,允許多位用戶或租戶發佈到主題。預設情況下,只有主題擁有者有權發佈主題、調整政策,欲知更多資訊,請見 允許群組發佈訊息到主題

誰可以訂閱主題?

訂戶可以由租戶管理員或主題擁有者新增。請參閱 通知政策管理訂閱 以了解更多資訊。

主題擁有者如何授予訂閱者存取權限?

主題擁有者可向訂閱者授予對主題的訂閱權限。關於更多資訊,請參閱通知發布的常用政策

誰可以確認或拒絕訂閱?

針對電子郵件,訂閱者將在新增後收到訂閱確認 URL。有關訂閱確認和重新傳送確認詳細資訊的更多幫助,請點擊 這裡 了解更多資訊。

通知如何確保發佈者無法向訂閱端點傳送垃圾郵件,並且只傳送給有效註冊且感興趣的訂閱者?

為了確保訂閱者端點不會被傳送垃圾郵件,並且只將訊息傳送給有效註冊的端點,通知要求訂閱者明確加入。

  1. 租戶管理員或主題擁有者新增端點用戶後,通知即會向該訂戶傳送確認訊息。
  2. 訂戶在端點收到確認訊息後會透過傳送有效回應來確認訂閱請求。唯有如此,通知才會認為訂閱請求有效。如果沒有回應,該服務不會向該端點傳送任何通知。

通知如何驗證 API 調用?

通知身份驗證與 Oracle Cloud Infrastructure Identity and Access Management(IAM)服務整合,欲知詳情請點擊這裡

訂戶如何取消訂閱訊息?

訂戶可以透過以下方式取消訂閱“通知”主題:

  • 透過使用控制台或 DeleteSubscription API 操作
  • (電子郵件訂戶專用) 透過在“通知”傳送電子郵件的內文中使用“取消訂閱”選項

限制與限制

通知服務有哪些限制?

  • 請注意,通知限制是在區域層級設定。
資源 每月通用積分 即用即付或促銷
話題 每個租用期 50 (有效或建立中*) 聯絡我們
訂閱數 每個主題 10 個 (有效或待處理 *)
每個租用期 100 (待處理 *)
聯絡我們
有關其他主題/訂閱,請聯絡我們增加限制。
  • 其他限制如下:
請求限制
項目 大小
每項請求的訊息大小 64 KB
訊息傳遞速率限制
通訊協定 每分鐘傳送到單一端點的訊息
電子郵件 60
Https (PagerDuty) 10

通知成本多少?

通知定價簡單直覺式。客戶按每則傳遞的訊息付費。HTTPS 方面,客戶每月每一百萬則訊息支付$0.60 美元。電子郵件方面,客戶每月傳送 1,000 封電子郵件就需支付 $0.02 美元。對於簡訊,客戶需依目的地國家 / 地區付費簡訊。

通知是否提供免費套餐?

通知引進讓 Oracle Cloud Infrastructure 客戶免費開始使用的免費套餐。客戶每個月可傳遞 100 萬則訊息到 HTTPS 端點及 1000 份電子郵件不產生任何費用。

下一步

如果「通知」未從訂閱端點接收確認,服務就會嘗試重新傳遞訊息,最長達 2 小時。當端點離線時,可能會發生這種情況。例如,PagerDuty 服務可能處於離線狀態。

後續步驟

欲知更多有關通知的資訊,請參閱以下文章: