O Amazon Simple Notification Service (Amazon SNS) é um serviço da Web que facilita a configuração, a operação e o envio de notificações com base na nuvem. Ele fornece aos desenvolvedores uma capacidade altamente escalável, flexível e econômica para publicar mensagens de um aplicativo e imediatamente entregá-las aos assinantes ou outros aplicativos. Ele foi desenvolvido para facilitar a web-escala de computação para os desenvolvedores.
O Amazon SNS fornece uma interface simples de serviços Web que pode ser usada para criar tópicos desejados para notificar aplicativos (ou pessoas), inscrever clientes nesses tópicos, publicar mensagens e fazer com que essas mensagens sejam fornecidas ao protocolo de escolha dos clientes (ou seja, HTTP, e-mail etc.). O Amazon SNS entrega notificações aos clientes usando um mecanismo “push” que elimina a necessidade de verificação periódica ou “poll” para novas informações e atualizações. O Amazon SNS pode ser alavancado para criar fluxos de trabalho altamente confiáveis e acionados por eventos e aplicativos de mensagens sem a necessidade da gestão complexa de middleware e aplicativos. Os usos potenciais do Amazon SNS incluem o monitoramento de aplicativos, sistemas de fluxo de trabalho, atualizações de informações relacionadas a horários, aplicativos móveis e muitos outros. Assim como todos os Amazon Web Services, não são necessários investimentos imediatos, e você paga somente pelos recursos que utilizar.
O nível gratuito da AWS inclui 1 milhão de solicitações, 100.000 notificações HTTP e 1.000 notificações de e-mail com o Amazon SNS.
Veja os detalhes do nível gratuito da AWS »O Amazon SNS é projetado para desenvolvedores e empresas que têm necessidades definidas por eventos em seus aplicativos e exigem uma solução de mensagem flexível, confiável e acessível que possam dimensionar com facilidade. O Amazon SNS pode ser altamente customizado pelos desenvolvedores para atender a uma ampla variedade de necessidades de aplicativos.
Para utilizar o Amazon SNS siga apenas esses simples passos:
O Amazon SNS fornece vantagens significativas com relação à complexidade de desenvolver soluções de mensagens personalizadas ou ao custo de softwares licenciados para sistemas que precisam ser gerenciados e mantidos no site.
Confiável – O Amazon SNS é executado na infraestrutura de rede e nos Datacenters comprovados da Amazon, portanto os tópicos estarão disponíveis sempre que os aplicativos precisarem deles. Para impedir que mensagens sejam perdidas, todas as mensagens publicadas no Amazon SNS são armazenadas de forma redundante em vários servidores e Datacenters.
Escalável – O Amazon SNS foi projetado para atender às necessidades dos aplicativos maiores e mais exigentes, permitindo que estes publiquem um número ilimitado de mensagens a qualquer momento.
Simples – Na maioria dos casos, os desenvolvedores podem começar a usar o Amazon SNS por meio de apenas três APIs: CreateTopic, Subscribe e Publish. Há outras APIs disponíveis, que fornecem mais funcionalidades avançadas.
Flexível O Amazon SNS permite que os aplicativos e usuários finais em dispositivos diferentes recebam notificações via HTTP/HTTPS, E-mail/E-mail-JSON ou filas do Amazon Simple Queue Service (SQS). Protocolos extras serão adicionados no futuro.
Seguro – O Amazon SNS fornece mecanismos de controle de acesso para assegurar que os tópicos e as mensagens serão protegidos contra o acesso não autorizado. Os proprietários de tópicos podem definir políticas para um tópico que restrinja quem pode publicar ou assinar um tópico. Além disso, os proprietários de tópicos podem assegurar que as notificações sejam criptografadas ao especificar que o mecanismo de entrega deve ser HTTPS.
Econômico – Os clientes do Amazon SNS beneficiam-se da definição de preço do tipo pague conforme usar sem tarifas nem compromissos prévios. Os únicos custos de envio de mensagens por meio do Amazon SNS são tarifas pequenas por solicitação, entrega de notificação e transferência de dados.
Criado para uso com outras Amazon Web Services – O Amazon SNS funciona hoje com outros serviços da AWS como Amazon SQS e EC2. Por exemplo, os aplicativos sendo executados no EC2 podem publicar atualizações de eventos/informações para o Amazon SNS e solicitar que eles sejam entregues imediatamente a outros aplicativos ou usuários finais. Além disso, os assinantes podem selecionar o Amazon SQS como um protocolo de entrega e solicitar que as notificações sejam entregues a uma fila do Amazon SQS, fornecendo a entrega e a persistência garantidas das mensagens. No futuro, o Amazon SNS será integrado com outros serviços da AWS, como o Amazon S3 e o SimpleDB. O Amazon SNS tem suporte em todas as regiões AWS, no entanto o suporte para notificação via SMS está disponível apenas na região do Oriente e pretendemos divulgar o suporte via SMS disponível em outros países e regiões AWS nos próximos meses.
Pague somente pelo que usar. Não há taxa mínima. Estime sua fatura mensal usando a Calculadora Mensal da AWS.
A definição de preços abaixo se baseia nos dados transferidos "para" ou do" Amazon SNS.
Transferência de dados "para" e "do" refere-se à transferência para e do Amazon SNS. Os dados transferidos entre o Amazon SNS e o Amazon EC2 em uma única região são gratuitos (ou seja, US$0,00 por GB). Os dados transferidos entre o Amazon SNS e o Amazon EC2 em diferentes regiões serão cobrados com base nas taxas de Transferência de dados via Internet em ambos os lados da transferência.
* O uso gratuito é calculado por mês em todas as regiões e aplicado automaticamente à sua fatura – o uso gratuito não se acumula.** Como parte do Nível de uso gratuito da AWS, novos clientes AWS receberão 15 GB de transferência de dados para fora gratuitamente a cada mês agregado em todos os serviços AWS, durante um ano.*** Os níveis de taxas de transferência para fora agregam a transferência de dados de saída no Amazon EC2, Amazon EBS, Amazon S3, Amazon Glacier, Amazon RDS, Amazon SimpleDB, Amazon SQS, Amazon SNS, Amazon DynamoDB, AWS Storage Gateway e Amazon VPC.| Recursos do desenvolvedor |
O Amazon SNS podem ser facilmente acessado através do AWS Management Console, que oferece aos usuários uma interface baseada na web do tipo apontar-e-clicar para configurar e gerenciar o Amazon SNS.
O Amazon SNS fornece um simples conjunto de APIs que são fáceis de usar e são altamente flexíveis. Para uma lista completa das APIs disponíveis do Amazon SNS, consulte o Guia de Referência de API do Amazon SNS. Algumas das APIs usadas com mais frequência e suas funcionalidades estão listadas abaixo:
CreateTopic: cria um tópico com o nome do tópico fornecido pelo cliente. Esta chamada de API é tudo de que se necessita para estabelecer um ponto de acesso para que os assinantes possam se inscrever para receber notificações e para que editores possam enviar mensagens.
Subscribe: Inscreva um novo assinante para um tópico. Como parte da chamada de API, o cliente (assinante ou proprietário do tópico) tem que especificar o tópico, o protocolo de transporte (HTTP/HTTPS, Email/Email-JSON, SQS) e o ponto de acesso (URL, endereço de E-mail, fila SQS) para o qual as notificações serão entregues. O Amazon SNS não fornecerá qualquer notificação até que os assinantes explicitamente confirmem sua intenção de receber notificações sobre determinado tema.
Publish: Publica uma mensagem no tópico, que por sua vez, distribui essa mensagem para todos os assinantes desse tópico. Como parte da chamada de API, a editora tem de especificar o tópico e fornecer o conteúdo da mensagem. O Amazon SNS atualmente permite um limite máximo de 64 KB para mensagens publicadas.
Application integration: o Amazon SNS pode ser usado em sistemas de fluxo de trabalho para revezar eventos entre aplicativos computacionais distribuídos, mover dados entre repositórios de dados, ou atualizar registros em sistemas de negócios. Por exemplo, em um aplicativo de processamento de pedidos, as mensagens de notificação podem ser enviadas sempre que ocorrer uma transação; um cliente faz um pedido, a transação é encaminhada para um processador de pagamento para aprovação e uma mensagem de confirmação de pedido é publicada em um tópico no Amazon SNS. Neste caso, o tópico tem vários assinantes por Email – comerciantes, clientes e parceiros da cadeia de fornecimento – e as notificações enviadas pelo Amazon SNS para aquele tópico podem instantaneamente atualizar todos aqueles pedidos cujo processamento de pagamentos foi bem-sucedido. As notificações também podem ser usadas para orquestrar um sistema de processamento de pedidos mais robusto, no qual as notificações enviadas por HTTP podem acionar o processamento em tempo real em componentes relacionados, tais como um sistema de inventário ou um serviço de envio. Por exemplo, o sistema de gestão de inventário pode ser notificado quando um pedido é selecionado, e um serviço de envio pode ser notificado quando o pedido estiver na plataforma de carregamento, pronto para ser enviado. O Amazon SNS pode ser usado para enviar notificações programáticas relativas à validação, aprovação, mudanças no inventário e o status de envio, para que os usuários finais e os componentes relevantes do sistema tenham visibilidade imediata sempre que ocorrerem alterações.
Time-sensitive information updates: outro tipo de uso é para oferecer suporte às necessidades de distribuição de informações de negócios, redes sociais ou outras organizações. As notificações podem ser usadas para alertar os assinantes sobre eventos de interesse – que eles podem optar por receber como notificações em dispositivos diferentes. Por exemplo, se uma determinada comunidade social se dedica a acompanhar de perto um esporte ou um time específico, atualizações sobre placares, programações, jogadores, eventos e disponibilidade de ingressos podem facilmente ser enviadas aos membros interessados. O Amazon SNS oferece uma forma flexível e de baixo custo de se comunicar com um amplo público instantaneamente – e de dimensionar para atingir a capacidade necessária.
Mobile applications: o Amazon SNS pode ser usado para retransmitir eventos de aplicativos críticos em termos de tempo para aplicativos e dispositivos móveis. Aplicativos móveis cada vez mais oferecem e integram informações em tempo real de uma variedade de origens, incluindo informações sobre clima, tráfego, ações, esportes e até mesmo jogos com vários participantes. Uma vez que o Amazon SNS é altamente confiável e escalável, ele fornece vantagens significativas para os desenvolvedores que criam aplicativos que dependem de eventos em tempo real. Os desenvolvedores podem facilmente integrar aplicativos móveis com o Amazon SNS hoje, para enviar mensagens e receber notificações sobre HTTP e email. Os aperfeiçoamentos futuros do Amazon SNS , tais como a entrega de notificação por SMS, fornecerão mais opções de protocolo e flexibilidade adicional para os desenvolvedores de aplicativos móveis.
O Amazon Simple Queue Service (SQS) e o Amazon SNS são serviços de mensagens dentro da AWS, que fornecem benefícios diferentes para os desenvolvedores. O Amazon SNS permite que aplicativos enviem mensagens críticas em termos de tempo para vários assinantes através de um mecanismo de "ação", eliminando a necessidade de verificar periodicamente ou "pesquisar" por atualizações. O Amazon SQS é um serviço de fila de mensagens usado por aplicativos distribuídos para trocar mensagens através de um modelo de pesquisa e pode ser usado para separar o envio e o recebimento de componentes. O Amazon SQS fornece flexibilidade para que componentes distribuídos de aplicativos enviem e recebam mensagens sem a necessidade de que cada componente esteja simultaneamente disponível. Ao utilizar o Amazon SNS e o Amazon SQS de forma conjunta, as mensagens podem ser distribuídas para aplicativos que exigem uma notificação imediata de um evento e também podem continuar em uma fila do Amazon SQS para que outros aplicativos as processem posteriormente.
As seguintes limitações estão atualmente em vigor no Amazon SNS beta:
*Cem (100) tópicos por conta AWS
Caso você necessite ultrapassar este limite, entre em contato conosco aqui.
O uso deste serviço está sujeito ao Acordo do Cliente da Amazon Web Services