Elige Pub/Sub o Pub/Sub Lite

Pub/Sub y Pub/Sub Lite son servicios de mensajería administrados y escalables horizontalmente. Estos servicios pueden manejar grandes volúmenes y admitir grandes requisitos de almacenamiento. Pub/Sub suele ser la solución predeterminada para la mayoría de los casos de uso de integración de aplicaciones y estadísticas. Tiene muchas funciones y está completamente administrada. Se recomienda usar Pub/Sub Lite para aplicaciones en las que la capacidad de procesamiento de mensajería es más estable, las cargas de trabajo se pueden beneficiar de un sistema basado en particiones y el costo es un gran problema.

Pub/Sub ofrece un rango más amplio de funciones, paralelismo por mensaje, enrutamiento global y capacidad de ajuste de escala automático de recursos. En términos de replicación de mensajes, Pub/Sub garantiza la replicación síncrona.

Pub/Sub Lite es una solución basada en particiones que sacrifica la carga de trabajo operativa, la disponibilidad global y algunas funciones por una mayor rentabilidad. Pub/Sub Lite requiere que reserves y administres la capacidad de los recursos de forma manual. En Pub/Sub Lite, puedes elegir temas Lite zonales o regionales. Los temas regionales de Lite ofrecen el mismo ANS de disponibilidad que los temas de Pub/Sub.

Ten en cuenta las diferencias de confiabilidad entre los dos servicios en términos de replicación de mensajes. Pub/Sub admite la replicación de datos síncrona y usa tres zonas. Los temas regionales de Lite replican los datos en una zona secundaria. Los temas de Lite zonales replican los datos solo en una zona.

Lista de tareas relacionadas con los requisitos comerciales

Las siguientes preguntas pueden ayudarte a elegir el servicio de mensajería de Pub/Sub correcto:

  • ¿La confiabilidad, el costo operativo mínimo y la facilidad de desarrollo son tus principales prioridades? Usar Pub/Sub

  • ¿Estás dispuesto a incurrir en alguna sobrecarga operativa adicional en términos de administración de la capacidad del tema, puedes trabajar con los riesgos de disponibilidad inherentes a los servicios zonales y requerir un costo bajo? Usa temas Lite zonales.

  • ¿Necesitas protección contra las fallas zonales, estás dispuesto a incurrir en una sobrecarga operativa adicional en términos de administración de la capacidad del tema y necesitas el costo por capacidad de procesamiento más bajo? Usa 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 pricing.

Tabla de comparación de funciones

Atributo Pub/Sub Pub/Sub Lite
Transparencia de acceso No.
Capacidad Aprovisionado automáticamente Aprovisiona antes de usar
Lenguajes de bibliotecas cliente Java, Python, Go, Node.js, C++, C#, PHP, Ruby, SAP y ABAP Java, Python y Go
Suscripciones entre proyectos No.
Claves de encriptación administradas por el cliente No.
Temas de mensajes no entregados No.
Entrega “exactamente una vez” No.
Integraciones
Filtrado de mensajes Sí, para los atributos de mensaje No.
Replicación de mensajes No.
Enruta mensajes Globales Zonal o regional
Validación de esquema de mensajes No.
Multizona en una sola región No. Zona única o zona doble en una sola región
Pedido de entrega 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 No.
Espacio de nombres de recursos Globales Zonal o regional
Período de retención Hasta 31 días Ilimitada
Extremos de Service Global y regional Regional
Almacenamiento Ilimitada Ilimitada
Suscripción

Replicación de datos

Los temas de Pub/Sub replican datos en tres zonas 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 los datos en dos zonas dentro de una región. Los temas zonales de Pub/Sub Lite almacenan datos en una sola zona dentro de una región. Para obtener más información sobre la replicación de datos de Pub/Sub Lite, consulta Replicación de datos en un tema de Lite.

Enruta mensajes

Tanto Pub/Sub como Pub/Sub Lite pueden publicar y suscribirse desde todas las regiones, incluso 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 que permiten las políticas de tu organización y se reenvían a los suscriptores, independientemente de la fuente.

Pub/Sub Lite enruta los mensajes dentro de una región o una zona. Los suscriptores deben conectarse a la instancia del servicio en la región en la que se encuentra el 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 en cualquier tema desde cualquier lugar, pero es posible que esto requiera conectarse a una región remota, lo que agrega latencia de red. Los suscriptores que necesitan datos agregados publicados en temas en diferentes ubicaciones 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 servicio de Pub/Sub puede almacenar mensajes en cualquier región que permita 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 qué extremo de servicio 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 la misma zona y proyecto de Cloud.

Las suscripciones y los temas Lite regionales 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 que admite 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. Estos incluyen Pull (sondeo tradicional), Push (HTTPS POST), StreamingPull (RPC bidireccional para obtener la latencia más baja y la eficiencia más alta) y de HTTP REST y gRPC.

Pub/Sub Lite solo admite la transmisión de mensajes de extracción de gRPC. Para solicitar mensajes, los suscriptores establecen conexiones de transmisión bidireccional 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: