El objetivo de este documento es ayudarte a elegir entre Pub/Sub y Pub/Sub Lite. Para leer este documento, debes conocer los conceptos básicos de Pub/Sub, como los temas y las suscripciones. Si es la primera vez que usas Pub/Sub, lee ¿Qué es Pub/Sub primero?
Pub/Sub y Pub/Sub Lite se pueden escalar horizontalmente y servicios de mensajería administrados. Estos servicios pueden manejar grandes volúmenes y admiten requisitos de gran almacenamiento. Pub/Sub suele ser el y predeterminada para la mayoría de los casos de uso de estadísticas y integración de aplicaciones. Es rico en funciones y está completamente administrado. Se recomienda Pub/Sub Lite para las aplicaciones en las que el rendimiento de la mensajería es más estable, las cargas de trabajo pueden beneficiarse de un sistema basado en particiones y el costo es una preocupación importante.
Pub/Sub ofrece una variedad más amplia de funciones, paralelismo por mensaje, enrutamiento global y ajuste de escala automático de la capacidad de los recursos. En condiciones de la replicación de mensajes, Pub/Sub garantiza para la replicación síncrona.
Pub/Sub Lite es una solución basada en particiones que intercambia la carga de trabajo operativa, la disponibilidad global y algunas funciones para la rentabilidad. Pub/Sub Lite requiere que reserves y administres recursos de forma manual la capacidad de procesamiento. En Pub/Sub Lite, puedes elegir zonas o temas regionales de Lite. Los temas regionales de Lite ofrecen el mismo ANS de disponibilidad que Temas de Pub/Sub.
Observa las diferencias de confiabilidad entre los dos servicios de la replicación de mensajes. Pub/Sub admite el funcionamiento y usa tres zonas. Los temas regionales de Lite replican datos en un zona secundaria. Los temas Lite zonales replican los datos en una sola zona.
Lista de tareas de los requisitos empresariales
Las siguientes preguntas pueden ayudarte a elegir el Pub/Sub correcto servicio de mensajería:
¿La confiabilidad, el costo operativo mínimo y la facilidad de desarrollo son tus prioridades? Usar Pub/Sub
¿Está dispuesto a incurrir en alguna sobrecarga operativa adicional en términos de administrar la capacidad de los temas, puede trabajar con la disponibilidad inherentes a los servicios zonales y requieren un costo bajo? Usa temas Lite zonales.
¿Necesitas protección contra fallas zonales?, están dispuestos a incurrir en una sobrecarga operativa adicional en términos de administrar la capacidad de los temas y requieren la menor de procesamiento? Usar temas Lite regionales
Para obtener más información sobre las diferencias de costos entre Pub/Sub y Pub/Sub Lite, consulta la página de precios.
Tabla de comparación de atributos
Atributo | Pub/Sub | Pub/Sub Lite |
---|---|---|
Transparencia de acceso | Sí | No |
Capacidad | Aprovisionado automáticamente | Aprovisiona antes de usar |
Lenguajes de las bibliotecas cliente | Java, Python, Go, Node.js, C++, C#, PHP, Ruby, SAP y ABAP | Java, Python y Go |
Suscripciones entre proyectos | Sí | No |
Claves de encriptación administradas por el cliente | Sí | No |
Temas de mensajes no entregados | Sí | No |
Entrega “exactamente una vez” | Sí | No |
Integraciones | ||
Filtrado de mensajes | Sí para los atributos del mensaje | No |
Replicación de mensajes | Sí | No |
Enruta mensajes | Global | Zonal o regional |
Validación del esquema de mensajes | Sí | No |
Multizona en una sola región | No | Zona única o doble zona en una sola región |
Pedido a domicilio | Orden por clave | Orden por partición |
Seguimiento de confirmación de recepción de mensajes | Por mensaje | Cursor por partición |
Precios | Paga por lo que usas | Paga por la capacidad que aprovisiones |
Extremos de REST | Sí | No |
Espacio de nombres de recursos | Global | Zonal o regional |
Período de retención | Hasta 31 días | Ilimitado |
Extremos de Service | Global y regional | Regional |
Almacenamiento | Ilimitado | Ilimitado |
Suscripción |
Replicación de datos
Los temas de Pub/Sub replican datos en tres zonas dentro de una región. Para obtener más información sobre la replicación de datos de Pub/Sub, consulta Replicación de datos en un tema.
Los temas regionales de Pub/Sub Lite replican datos en dos zonas dentro de una región. Los temas zonales de Pub/Sub Lite almacenan datos una sola zona dentro de una región. Para obtener más información sobre replicación de datos de Pub/Sub Lite, consulta Replicación de datos en un tema Lite.
Enruta mensajes
Tanto Pub/Sub como Pub/Sub Lite pueden publicar y se suscriban desde todas las regiones y hasta fuera de Google Cloud.
Pub/Sub enruta los mensajes de forma global. Las aplicaciones alojadas en cualquier región pueden publicar mensajes en un solo tema. Los mensajes se procesan en la región más cercana permitida por las políticas de tu organización y se reenvían a los suscriptores sin importar la fuente.
Pub/Sub Lite enruta los mensajes dentro de una región o zona. Los suscriptores deben conectarse a la instancia del servicio en la región en la que de la búsqueda de este tema. Como resultado, los publicadores y suscriptores deben mantener la conectividad de red en la misma región para la comunicación. Los publicadores pueden publicar datos cualquier tema desde cualquier lugar, pero esto puede requerir conectarse a una región remota, agregar latencia de red. Suscriptores que necesitan datos agregados que se publicaron en temas en ubicaciones diferentes deben conectarse a cada instancia de servicio local relevante para leer los mensajes.
Espacio de nombres de recursos
Los temas y las suscripciones de Pub/Sub son recursos globales. El El servicio de Pub/Sub puede almacenar mensajes cualquier región lo que permite una política de almacenamiento de temas. Además, un tema y una suscripción a ese tema se pueden almacenar en proyectos diferentes, lo que permite una facturación y un control de acceso detallados. Por último, los suscriptores obtienen los mismos datos sin importar el extremo de servicio que usen para conectarse a Pub/Sub o qué extremo de servicio usó el publicador de los datos.
Los temas y las suscripciones de Zonal Lite son recursos zonales. Estos recursos deben estar en el mismo proyecto y zona de Cloud.
Los temas y las suscripciones de Regional Lite son recursos regionales. Estos recursos deben estar en el mismo proyecto y la misma región de Cloud.
Para obtener una lista de las regiones y zonas compatibles con Pub/Sub Lite, consulta Ubicaciones de Pub/Sub Lite.
Administración de capacidad
Pub/Sub escala automáticamente. La capacidad para la publicación de mensajes se aprovisiona de forma automática, de modo que puedas enviar y recibir mensajes en cualquier frecuencia, hasta las cuotas que configures para tu proyecto.
Pub/Sub Lite se aprovisiona de forma manual. Debes configurar la cantidad de particiones por tema de Lite. También debes aprovisionar la capacidad de procesamiento y almacenamiento. La capacidad de procesamiento se puede aprovisionar con reservas de Lite.
Modos de entrega
Pub/Sub admite varios modos de entrega de mensajes. Entre estas se incluyen Pull (sondeo tradicional), Push (HTTPS POST), StreamingPull (RPC bidireccional, para la latencia más baja y la mayor eficiencia) y la extracción de REST y gRPC HTTP.
Pub/Sub Lite solo admite la transmisión de mensajes de extracción de gRPC y la entrega de modelos de AA. Para solicitar mensajes, los suscriptores establecen transmisiones bidireccionales conexiones de red con cada partición.
Paralelismo
Pub/Sub usa el paralelismo por mensaje. Esto permite el procesamiento simultáneo de cualquier cantidad de mensajes, desde uno o miles de clientes para una sola suscripción.
Pub/Sub Lite usa el paralelismo basado en particiones. Esto obliga a un cliente a procesar cada partición de datos en orden lineal en una sola instancia de cliente. Esto limita la cantidad máxima de instancias de cliente a la cantidad máxima de particiones.
Canalizaciones de transmisión
Pub/Sub y Pub/Sub Lite están integrados en Dataflow para el procesamiento de transmisión y la integración de datos sin servidores. Pub/Sub permite que Dataflow realice un escalamiento más flexible y admite Dataflow SQL.
Para comenzar con Dataflow y Pub/Sub o Pub/Sub Lite, prueba estos instructivos: