Was ist der Unterschied zwischen Amazon SNS und Amazon SQS?
Verstehe ich nicht, wenn ich mit SNS gegen SQS, und warum sind Sie immer miteinander gekoppelt?
Kommentar zu dem Problem - Öffnen
Was ich verstehe, aus Ihrem Kommentar beschrieben ist im folgenden flow.. ist es richtig? Publisher --> SNS --> SQL (die Nachrichten in der Warteschlange) --> Abonnenten (derzeit offline)
InformationsquelleAutor der Frage Nick Ginanto | 2012-12-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
SNS ist eine verteilte publish-subscribe system. Nachrichten sind geschoben Abonnenten, wie und Wann Sie gesendet werden, von Verlagen zu SNS. SQS verteilt queuing system. Nachrichten werden NICHT gepusht auf den Empfänger. Receiver müssen Umfrage SQS, um Nachrichten zu empfangen. Nachrichten können nicht empfangen werden, die von mehreren Empfängern zur gleichen Zeit. Jeder Empfänger kann eine Nachricht empfangen, verarbeiten und löschen. Andere Empfänger, die nicht erhalten die gleiche Nachricht später. Polling inhärent führt einige Latenz bei der Nachrichtenübermittlung in SQS-im Gegensatz zu SNS, wo Nachrichten werden sofort per PUSH an den Abonnenten. SNS unterstützt mehrere Endpunkte wie E-Mail, sms, http-Endpunkt und SQS. Wenn Sie möchten, dass unbekannte Anzahl und Art der Teilnehmer, um Nachrichten zu empfangen, müssen Sie die SNS.
Sie nicht haben, um einige SNS und SQS immer. Sie können SNS senden von Nachrichten an E-Mail, sms oder http-Endpunkt abgesehen von SQS. Es gibt Vorteile auf SNS-Kopplung mit SQS. Sie können nicht wollen, einen externen Dienst zu stellen verbindungen zu Ihren hosts (firewall alle eingehenden verbindungen blockieren, um Ihre Gastgeber von außen). Ihr end-Punkt kann nur sterben, weil der schweren Volumen von Nachrichten. E-Mail-und SMS-vielleicht nicht Ihre Wahl für die Verarbeitung von Nachrichten schnell. Durch die Kopplung mit der SQS, SNS, können Sie Nachrichten erhalten, in Ihrem Tempo. Es erlaubt clients, die offline zu sein, tolerant zu Netzwerk-und host-Ausfälle. Sie erzielen eine garantierte Lieferung. Wenn Sie konfigurieren SNS senden von Meldungen an einen http-Endpunkt oder eine E-Mail oder SMS, mehrere Ausfälle zu senden, die Nachricht möglicherweise in Nachricht gelöscht wird.
SQS wird hauptsächlich zur Entkopplung von Anwendungen oder integrieren Anwendungen. Nachrichten, die gespeichert werden können in SQS für kurze Zeit (max 14 Tage). SNS verteilt mehrere Kopien der Nachricht an mehrere Abonnenten. Zum Beispiel können sagen, Sie möchten replizieren von Daten von einer Anwendung erzeugt werden, um mehrere Speicher-Systeme. Könnten Sie benutzen SNS und senden diese Daten an mehrere Abonnenten, jede Replikation der Nachrichten, die es erhält, um verschiedene storage Systeme (s3, Festplatte auf dem host, Datenbank, etc.).
InformationsquelleAutor der Antwort Srikanth
Aws-doc:
http://docs.aws.amazon.com/sns/latest/dg/SendMessageToSQS.html
InformationsquelleAutor der Antwort Tommy
AWS SNS ist ein publisher-subscriber-Netzwerk, in dem Nutzer abonnieren können, um Themen und Nachrichten empfangen, wenn ein Verlag veröffentlicht zu diesem Thema.
AWS SQS eine queue service speichert Nachrichten in einer Warteschlange. SQS kann nicht liefern Sie keine Nachrichten, wo ein externer Dienst (lambda, EC2 etc.) notwendig ist, um die Umfrage der SQS und schnappen Sie sich Nachrichten von SQS.
SNS und SQS können zusammen verwendet werden, hat mehrere Gründe.
Möglicherweise gibt es verschiedene Arten von Abonnenten, wo einige müssen die
sofortige Lieferung von Nachrichten, in denen einige erfordern würde, die Nachricht
bleiben, für spätere Verwendung per polling. Sehen Sie diese link.
"Fanout-Sprüche." Dies ist für die asynchrone Verarbeitung von
Nachrichten. Wenn eine Nachricht veröffentlicht wird, SNS, es kann verteilen es
an mehrere SQS-Warteschlangen parallel. Dies kann groß sein, wenn be -
thumbnails in einer Anwendung parallel, wenn die Bilder sein
veröffentlicht. Sehen Sie diese link.
Persistenten Speicher. Wenn ein Dienst geht, um eine Nachricht zu verarbeiten ist nicht zuverlässig. In einem Fall wie diesem, wenn SNS schiebt ein
Benachrichtigung für einen Dienst, und dieser Dienst ist nicht verfügbar, dann die
Benachrichtigung verloren. Daher können wir die Verwendung der SQS als eine beständige
Lagerung und dann verarbeiten Sie anschließend.
InformationsquelleAutor der Antwort Keet Sugathadasa