En un proceso ETL que estamos implementando, crearemos un tema de Amazon SNS que enviará mensajes a una cola de Amazon SQS.
En la documentación no vimos una especificación particular con respecto a los nombres, por lo que me preguntaba si alguien podría recomendar las mejores prácticas con respecto a las convenciones de nomenclatura para los temas de SNS y las colas de SQS.
El alcance es saber si existen mejores prácticas en la nomenclatura de temas (SNS) y colas (SQS) para seguir el mejor enfoque para la nomenclatura. Por ejemplo, ¿se recomienda el caso del camello? ¿Debe el nombre del tema/nombre de la cola dar una representación del dominio?
Puede nombrar los temas de SNS y las colas de SQS como desee, siempre que no presente quejas (por ejemplo, espacios o caracteres ilegales).
Tenga en cuenta que, con el tiempo, puede tener muchos temas y muchas colas, y forman parte del ARN, por lo que será difícil cambiarlos en el futuro. Recomendaría un prefijo para la aplicación y una parte descriptiva. Por ejemplo, si la aplicación unicornio envía una factura a una cola, llame a la cola:
unicorn_invoice No incluya 'tema' o 'cola' en el nombre, ya que son irrelevantes (p. ej., unicorn_invoice es mejor que unicorn_invoice_queue ).
Si muchos equipos diferentes usan la misma cuenta de AWS, puede agregar un nivel adicional para indicar quién es el "propietario" del recurso, como:
lawson_unicorn_invoiceCamelCase también está bien, si eso es común en su empresa:
lawsonUnicornInvoiceImplementamos el patrón fanout y descubrimos que la cola de SQS que hereda el nombre del tema de SNS era el mejor enfoque, ya que ayuda en el desarrollo, la depuración y la representación del conocimiento del dominio.
Por ejemplo, si tienes una aplicación llamada StrawberryShaker . El tema se llamaría StrawberryShaker y todas las colas suscritas tendrían el prefijo StrawberryShaker .
Hay una longitud de nombre que debe tener en cuenta: -
Un nombre de cola puede tener hasta 80 caracteres. Se aceptan los siguientes caracteres: caracteres alfanuméricos, guiones (-) y guiones bajos (_).
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html
Los nombres de los temas están limitados a 256 caracteres. Se permiten caracteres alfanuméricos más guiones (-) y guiones bajos (_).
https://aws.amazon.com/sns/faqs/
¡Espero que ayude!