2016-07-07 38 views
6

Zajmuję się tworzeniem architektury dla powiadomień wypychanych za pomocą AWS SNS z APNS i GCM. Model, który śledzę toObejście problemu AWS SNS dla limitu 100 000 tematów

  • Każdy użytkownik (nie urządzenia) będą miały temat SNS odpowiadająca jej
  • Każdy użytkownik może mieć wiele urządzeń
  • Utwórz punkt końcowy aplikacji platforma dla każdego urządzenia
  • Subskrybuj punkt końcowy aplikacji platformy do tematu należącego do użytkownika urządzenia

W ten sposób, kiedy musimy wysłać powiadomienie do wszystkich urządzeń użytkownika, musimy zadzwonić pod numer publish metoda korzystająca z użytkownika użytkownika topicArn i wszystkich jego urządzeń powinna otrzymać wiadomość.

Jednak domyślnie AWS ma limit 100 000 tematów. Jeśli oczekujemy większej liczby użytkowników, takich jak 1 milion lub 10 milionów, aby być optymistami, czy istnieje jakieś obejście tego podejścia?

Czy powinienem poprosić AWS o wcześniejsze podniesienie limitu? Czy łatwo podnoszą limit do liczby jak 100 milionów? Czy istnieje jakakolwiek implikacja kosztowa większości z nich nie jest stosowana na początku kilku miesięcy?

Odpowiedz

8

ujawnienie: Kiedyś do pracy na Amazon SNS

Architektura proponujecie jest wspólny wzorzec ciągu Amazon SNS i jest dźwięk.

Powinieneś poprosić o numer topic limit increase. Nie ma żadnych kosztów związanych z wyższym limitem tematów, nawet jeśli tworzysz tematy i nie używasz ich. Będziesz jednak pay $0.50/million requests za każde połączenie CreateTopic, a pierwszy 1 milion żądań będzie bezpłatny za miesiąc.

Po przesłaniu zgłoszenia do pomocy technicznej udokumentuj swój przypadek użycia. Pomaga zespołowi przyspieszyć wniosek o zwiększenie limitu.

1

Z usługą Amazon SNS nie pobiera się minimalnej opłaty, a płacisz tylko za to, z czego korzystasz. Użytkownicy płacą 0,50 USD za 1 milion żądań Amazon SNS, 0,06 USD za 100 000 powiadomień za pośrednictwem HTTP, 0,75 USD za 100 powiadomień za SMS i 2,00 USD za 100 000 powiadomień za pośrednictwem poczty e-mail.

Amazon SNS zawiera również bezpłatny poziom, na którym użytkownicy mogą rozpocząć korzystanie z usługi Amazon SNS za darmo. Każdego miesiąca klienci SNS Amazon nie płacą żadnych opłat za pierwsze 1 milion zgłoszeń SNS Amazon, brak opłat za pierwsze 100 000 powiadomień za pośrednictwem protokołu HTTP, brak opłat za pierwsze 100 powiadomień za pośrednictwem wiadomości SMS i brak opłat za pierwsze 1000 powiadomień za pośrednictwem wiadomości e-mail.

Więc zasugeruję zwiększenie limitu przed ręką, jeśli jest to przewidywane przez Ciebie. nie obciążymy Cię za zwiększenie limitów. Z pewnością wzrosną do 100 milionów.

0

Stosowaliśmy podobny model do OP z jednym wyjątkiem - wraz ze wzrostem liczby użytkowników, a także liczbą martwych rachunków. Zmierz się z tym, retencja użytkownika stanowi wyzwanie. Więc możesz wymyślić strategię recyklingu tematów. Podpowiedź: nie wiąż w sposób stały tematu z użytkownikiem, ale zezwól na wygaśnięcie ARN, podobnie jak dzierżawa DHCP. Twoja aplikacja może okresowo pytać serwis internetowy, jakiego ARN potrzebuje, aby się zapisać i spodziewać się ponownego przypisania. Jeśli wcześnie zostanie to wbudowane w protokół klienta, nie będziesz potrzebował tylu ARNów.W końcu 100k aktywnych użytkowników jest zupełnie inny niż 100k zarejestrowanych użytkowników :)