2016-07-07 91 views
6

我正在開發使用AWS SNS與APNS和GCM進行推送通知的體系結構。那我下面的模型是適用於100,000個主題的AWS SNS解決方法限制

  • 每個用戶(而不是設備)將會有與之相對應的SNS話題
  • 每個用戶可以擁有多個設備
  • 爲每個設備
  • 創建平臺應用程序終結點訂閱平臺應用端點到屬於設備用戶的主題

這樣,當我們必須向用戶的所有設備發送通知時,我們需要調用publish使用用戶的topicArn及其所有設備應該得到的消息。

但是,默認情況下,AWS擁有100,000個主題的限制。如果我們預計更多的用戶數量達到100萬,或者說有1000萬人樂觀,那麼這種方法是否有任何解決方法?

我應該要求AWS事先提高限制嗎?他們是否輕鬆提高了數量上限爲1億個?他們大多數人在開始的幾個月裏沒有使用任何成本含義?

回答

8

披露:我曾經在亞馬遜SNS

您提出的架構是亞馬遜SNS中的常見模式和健全的工作。

您應該要求​​。即使您創建了主題並且不使用它們,也不會產生更高的主題限制。但是,您將爲每個CreateTopic呼叫撥打pay $0.50/million requests,前100萬個請求每月免費。

當您提交支持票時,請記錄您的使用案例。它可以幫助團隊加快增加限額的要求。

1

使用亞馬遜SNS,沒有最低費用,您只需支付您使用的費用。用戶每百萬Amazon SNS請求支付0.50美元,通過HTTP每100,000通知遞送0.06美元,通過SMS每100美元通知遞送0.75美元以及通過電子郵件每100,000通知遞送2.00美元。

Amazon SNS還包含免費套餐,用戶可以免費使用Amazon SNS。每個月,亞馬遜SNS客戶不需要爲前100萬Amazon SNS請求支付費用,不通過HTTP支付前100000通知費用,不通過SMS收取前100個通知費用,並且前1000個通過電子郵件通知不收費。

所以我會建議你事先增加限制,如果這是你所預期的。你不會因爲增加限制而被收費。他們肯定會增加到1億。

0

我們跟隨着類似的模式,只有一個例外 - 隨着用戶數量的增長,死亡賬戶的數量也增加了。面對它,用戶保留帶來了挑戰。所以你可能想要提出一個主題回收策略。提示:不要將主題永久綁定到用戶,而是允許ARN過期,類似於DHCP租約。您的應用可能會定期詢問您的Web服務需要訂閱哪些ARN並期望重新分配。如果您在早期將其構建到客戶端協議中,則不需要儘可能多的ARN。畢竟,100k 活躍用戶完全不同於100k 註冊用戶 :)

相關問題