Google Pub/Sub入门

什么是Google Pub/Sub?

首先他是一个messaging buffer/coupler消息缓冲区/耦合器,Decouples senders and receivers解耦发送者和接收者。

一些特性:

  • 使用 Dataflow 注入分析事件并将其流式插入到 BigQuery
  • 免运维、安全、可伸缩的消息传递系统或队列系统
  • 利用拉取和推送模式进行至少一次有序和任意顺序消息传送
  • 通过精细的访问权限控制和始终开启的加密功能保护数据

官方文档,建议多多阅读https://cloud.google.com/pubsub/docs/overview
study a lot from b06-Cloud-PubSub

Pub/Sub Core Concepts 核心概念

  • Topic主题: A named resource to which messages are sent by publishers。类似于数据库的表,不同的数据位于不同的topic,同个主题下面可以有同个东西的不同类型,例如balance topic, 它可以包含Intraday和EndOfDay类型的Balance。
  • Subscription订阅者: A named resource representing the stream of messages from a single, specific topic, to be delivered to the subscribing application.。为不同的应用分发不同的订阅者标识,就像一个appId一样,多个订阅者可以同时订阅一个topic以获取资源。
  • Message消息: The combination of data and (optional) attributes that a publisher sends to a topic and is eventually delivered to subscribers. 发布者发送给主题并最终交付给订阅者的数据和(可选)属性的组合。
  • Message attribute消息属性: A key-value pair that a publisher can define

订阅模式

Pull拉取订阅:适用于大规模消息传输,Batch传输。在拉取传送模式下,订阅者应用向 Pub/Sub 服务器发起请求来检索消息。您可以使用拉取模式执行异步或同步消息处理。拉取模式在可使用以下两项服务 API 之一的客户端库中运行:Pull 或 StreamingPull。
Push推送订阅:适用于实时传输,基于HTTPS模式的WEBHOOK。在推送传送模式下,Pub/Sub 向订阅者应用发起请求来传送消息。
BigQuery 订阅:收到消息后,BigQuery 订阅会将消息写入现有 BigQuery 表。您无需单独配置订阅者客户端。使用 Google Cloud Console、Google Cloud CLI、客户端库或 Pub/Sub API 创建、更新、列出、分离或删除 BigQuery 订阅。

PubSub流程

首先分发subscription给不同的应用,应用开始订阅主题之后,就可以推式或者拉式获得信息。
在这里插入图片描述

PubSub操作命令

gcloud SDK命令行工具操作pub/sub命令如下

创建主题

$ gcloud pubsub topics create pkslow-topic

创建订阅

$ gcloud pubsub subscriptions create pkslow-sub --topic=pkslow-topic

发布消息

$ gcloud pubsub topics publish pkslow-topic --message=“www.pkslow.com”

接收消息

$ gcloud pubsub subscriptions pull pkslow-sub --auto-ack

不同开发语言调用PubSub

JAVA语言之b06-01-Cloud-PubSub-HelloWorld
Node.JS PubSub Client

操作PubSub

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/moshowgame/article/details/126924112