• 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

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

    在这里插入图片描述

  • 相关阅读:
    VSCode不同窗口设置不同颜色
    【开源】基于JAVA的超市自助付款系统
    java计算机毕业设计会员商城管理系统MyBatis+系统+LW文档+源码+调试部署
    STM32f103 SMO滑膜观测器的FOC驱动DIY
    【数据结构与算法】链表的实现以及相关算法
    Eureka注册中心
    2212. 射箭比赛中的最大得分-动态规划算法-多背包问题转化
    如何找到能商用的背景纯音乐
    RT-Smart 应用开发笔记:fopen 造成文件被清空问题的分析记录
    Docker(六)——挂载实现同步
  • 原文地址:https://blog.csdn.net/moshowgame/article/details/126924112