sqs sns que priority pricing precios precio high aws c# amazon-web-services amazon-sqs

c# - sns - sqs priority



Mejores prácticas para usar Amazon SQS: sondear la cola (5)

Estoy diseñando un servicio para enviar correos electrónicos a nuestro sitio de comercio electrónico (confirmaciones de pedidos, alertas, etc.). El plan es tener un método "SendEmail", que genere una porción de XML que represente el correo electrónico que se enviará, y en una cola Amazon SQS. Mi (s) aplicación (es) web y otras aplicaciones usarán esto para "enviar" correos electrónicos.

Luego requiero una forma de verificar la cola y enviar físicamente los mensajes de correo electrónico. (Sé cómo voy a enviar correos electrónicos)

Tengo curiosidad sobre cuál sería la mejor manera de "sondear" la cola?

¿Debo crear un servicio de Windows y usar algo como Quartz.net para programarlo y verificar la cola cada x número de minutos, por ejemplo? ¿Hay una mejor manera de hacer esto?


Si yo fuera usted, y si REALMENTE quisiera hacer que SQS funcione para este escenario, crearía un servicio de Windows que recupera los mensajes de la cola cada 10 minutos y luego los despacha.

Si pudiera utilizar potencialmente un servicio diferente, seriamente consideraría usar algo como matasellos (que acabo de descubrir hoy gracias a un comentario en la publicación de blog de Jeff Atwood ). Simplemente enviaría la información de su mensaje de correo electrónico a su API, y ellos se encargarían del resto. Incluso tienen una API para buscar correos electrónicos devueltos. Nunca utilicé este servicio, pero creo que suena bien y consideraría seriamente usarlo en el futuro.


Parece que SES es lo que necesitas. http://aws.amazon.com/ses/ Es muy económico comparado con otros servicios similares o con otros sistemas.


Suena más como Amazon SNS es tu arándano. (No estoy seguro de lo que eso significa, pero lo vi en una película una vez).

SQS es más como "¡con suerte alguien viene a buscar este mensaje en algún momento antes de que expire!" donde SNS parece más como un "¡Tengo que asegurarme de que esto llegue a quien lo necesite de inmediato!"

Incluso incluye el correo electrónico como un transporte preconstruido. (Ni siquiera estoy seguro de si esa es la palabra correcta)

Amazon SNS proporciona una interfaz simple de servicios web que puede usarse para crear temas sobre los que desea notificar a las aplicaciones (o personas), suscribir clientes a estos temas, publicar mensajes y hacer que estos mensajes se entreguen a través del protocolo de elección de los clientes (es decir, HTTP, correo electrónico, etc.). Amazon SNS entrega notificaciones a los clientes mediante un mecanismo de "inserción" que elimina la necesidad de verificar o "sondear" periódicamente la información y las actualizaciones nuevas.

Para estar seguros, tienen el mismo modelo freemium que el resto de los servicios con limitaciones en el correo electrónico:

Puede comenzar con Amazon SNS de forma gratuita. Cada mes, los clientes de Amazon SNS no pagan cargos por las primeras 100.000 solicitudes de SNS de Amazon, sin cargos por las primeras 100.000 notificaciones por HTTP y sin cargos por las primeras 1,000 notificaciones por correo electrónico.



El servicio de Windows es la mejor manera, pero no debe tomarlo. Para ejecutar el trabajo en segundo plano en el entorno ASP.NET, hay HostingEnvironment.QueueBackgroundWorkItem . Un buen punto de partida para implementar sondeos continuos (a través de sondeos largos) es sq-consumer .