Desde sgcWebSockets 4.3.6 se admite la API de Google Cloud Pub/Sub.
Pub/Sub aporta a la nube la flexibilidad y la fiabilidad de un middleware empresarial orientado a mensajes. Al mismo tiempo, Pub/Sub es un sistema escalable y duradero de ingesta y entrega de eventos que sirve como base para los pipelines modernos de análisis de streams. Al proporcionar mensajería asíncrona many-to-many que desacopla emisores y receptores, permite una comunicación segura y altamente disponible entre aplicaciones desarrolladas de forma independiente. Pub/Sub ofrece mensajería duradera de baja latencia que ayuda a los desarrolladores a integrar rápidamente sistemas alojados en Google Cloud Platform y fuera de ella.
Casos de uso habituales
- Balanceo de cargas en clusters de red. Por ejemplo, una cola amplia de tareas puede repartirse eficientemente entre varios workers, como instancias de Google Compute Engine.
- Implementación de flujos asíncronos. Por ejemplo, una aplicación de procesamiento de pedidos puede publicar un pedido en un topic, desde el que lo procesarán uno o varios workers.
- Distribución de notificaciones de eventos. Por ejemplo, un servicio que acepta registros de usuarios puede enviar notificaciones cada vez que se registra un nuevo usuario, y los servicios downstream pueden suscribirse para recibir esas notificaciones.
- Refresco de cachés distribuidas. Por ejemplo, una aplicación puede publicar eventos de invalidación para actualizar los IDs de los objetos que han cambiado.
- Registro en múltiples sistemas. Por ejemplo, una instancia de Google Compute Engine puede escribir registros en el sistema de monitorización, en una base de datos para consultarla más tarde, etc.
- Streaming de datos desde diferentes procesos o dispositivos. Por ejemplo, un sensor doméstico puede enviar datos en streaming a servidores backend alojados en la nube.
- Mejora de la fiabilidad. Por ejemplo, un servicio de Compute Engine en una sola zona puede operar también en otras zonas suscribiéndose a un topic común, para recuperarse de fallos en una zona o región.
Componente Delphi / CBuilder
El componente Google Cloud Pub/Sub de sgcWebSockets utiliza la API REST para conectarse a la API de Google. A continuación tienes un ejemplo de cómo crear un nuevo topic.
//Create a new topic for project with id: pubsub-270909 and topic name topic-1.
oPubSub := TsgcHTTPGoogleCloud_PubSub_Client.Create(nil);
oPubSub.GoogleCloudOptions.OAuth2.ClientId := '... your google client id...';
oPubSub.GoogleCloudOptions.OAuth2.ClientSecret := '... your google client secret...';
oPubSub.CreateTopic('pubsub-270909', 'topic-1');
//Response from Server
{
"name": "projects/pubsub-270909/topics/topic-1"
}
