Google Cloud Pub/Sub 初探 - 控制面板

概述

Google Cloud Pub/Sub 是一個訊息服務,提供在不同的應用或服務之間,傳遞事件資料,資料的產生者發佈訊息到 Cloud Pub/Sub topic, 訂閱者可以經由訂閱拉回訊息,或是設定好,當某事件被觸發時,就觸發訂閱。 每個訂閱者必須在可設定的一段時間內確認收到訊息


你將會做什麼?

  • 設定一個 topic 來存放資料
  • 訂閱一個 topic 來存取資料
  • 發佈,然後經由訂閱者來消耗訊息



前言

本篇主要是利用 Google 的 Qwiklab 平台學習的同時,做的一份學習筆記
為避免翻譯誤解,專業術語在本篇將不會被翻譯,保留原文




設定及要求

在你按下 Start Lab 按鈕之前

詳讀所有的教學。Labs 是有時間限制的,而且你不可以停止時間倒數。倒數計時器在你按下 Start Lab 按鈕後開始倒數,上面顯示的時間為你還能使用 Cloud 資源的時間。

Qwiklabs 的手把手環境,讓你可以在真實環境中來操作進行 Qwiklabs 上提供的課程,而不是在一個模擬或是展示的環境。我們透過提供你一個全新的、暫時的帳號密碼,在計時器歸零之前,你可以用來登入並存取 Google Cloud Platform。

你需要什麼?

要完成這個 lab ,你需要:

  • 一個一般的網路瀏覽器(推薦 Chrome)
  • 完成這個 lab 的時間

備註: 如果你已經有你自己的個人 GCP 帳號或專案,請不要使用在這一個 lab

現在你已經開始你的 lab, 你將會登入 Google Cloud Shell 主控台,然後開啟命令列工具

如何開始你的 lab ,然後登入 Console?

  1. 按下 Start Lab 按鈕。如果你需要付費,會有一個彈出視窗來讓你選擇付費的方式。在左方你會看到一個面板,上面有暫時的帳號密碼,你必須使用這些帳號密碼在此次 lab

  1. 複製 username , 然後點擊 Open Google Console。 Lab 會開啟另外一個視窗,顯示選擇帳號的頁面

tip: 開啟一個全新的視窗,然後跟原本的頁面並排

  1. 在選擇帳號頁面, 點擊 Use Another Account

  1. 登入頁面開啟,貼上之前複製的 username 以及 password ,然後貼上

重要:必須使用之前於 Connection Details 面板 取得的帳號密碼,不要使用你自己的 Qwiklabs 帳號密碼。 如果你有自己的 GCP 帳號,請不要用在這裡(避免產生費用)

  1. 點擊並通過接下來的頁面:
    • 接受terms以及conditions
    • 不要增加recovery optoins 或 two factor authentication (因為這只是一個臨時帳號)
    • 不要註冊免費體驗

稍待一些時候, GCP 控制台將會在這個視窗開啟。

注意:按下左上方位於Google Cloud Platform 隔壁的 Navigation menu ,你可以瀏覽選單,裡面有一系列的 GCP 產品以及服務


啟動 Google Cloud Shell

Google Cloud Shell 是載有開發工具的虛擬機器。它提供了5GB的 home 資料夾,並且運行在 Google Cloud 上。 Google Cloud Shell 讓你可以利用 command-line 存取 GCP 資源

  1. 在 GCP 控制台 ,右上的工具列,點擊 Open Cloud Shell 按鈕

  1. 在打開的對話框裡,按下 START CLOUD SHELL:

你可以立即按下 START CLOUD SHELL 當對話視窗打開。

連結並提供環境會需要一點時間。當你連結成功,這代表你已成功獲得授權,且此專案已被設為你的專案ID,例如:

gcloud 是 Google Cloud Platform 的 command-line 工具,他已事先被安裝在 Cloud Shell 並且支援自動補齊

使用這個 command ,你可以列出有效帳戶名稱:

gcloud auth list

輸出:

Credentialed accounts:
- <myaccount>@<mydomain>.com (active)

範例輸出:

Credentialed accounts:
- google1623327_student@qwiklabs.net

你可以使用以下 command 來列出專案 ID

gcloud config list project

輸出:

[core]
project = <project_ID>

範例輸出:

[core]
project = qwiklabs-gcp-44776a13dea667a6

gcloud 的完整文件可以參閱 Google Cloud gcloud Overview




設定 Pub/Sub

你可以使用 Google Cloud Shell 主控台來操作 Google Cloud Pub/Sub

要使用 Pub/Sub, 你建立一個 topic 來存放資料,以及一個訂閱來存取被發佈到 topic 的資料

  1. 點擊 Navigation menu > Pub/Sub > Topics

  1. 點擊Create a topic

  1. topic 必須是一個獨一無二的名字,在這個 lab 中,將你的 topic 取名為 MyTopic. 在 Create a topic 視窗中:
  • 將你的 topic 取名為 MyTopic
  • 將 Encryption 留為默認值
  • 點擊 CREATE TOPIC

你已經建立了 topic


測試任務是否完成

點擊Check my progress 來和對目前任務進度。如果你已經成功建立 Cloud Pub/Sub topic, 你會得到評價的分數




增加一個訂閱

現在你將建立一個訂閱來存取 topic

  1. 在左邊的控制列點擊 Topics 回到 Topics 對話框, 在我們剛剛建立的 topic,在三個點的圖案處按一下,然後點擊 Create subscription

  1. 在 Add subscription to topic 對話框:
    • 輸入 subscription 的名字,例如 MySub
    • 將 Delivery type 設為 Pull
    • 將其他選項都留為預設值
    • 點擊 Create
    你的訂閱被列在訂閱清單中

測試任務是否完成

點擊Check my progress 來和對目前任務進度。如果你已經成功建立 Cloud Pub/Sub topic, 你會得到評價的分數




測試你的理解

底下有一些問題用來鞏固你對這個 lab 概念的了解,盡你所能的去回答吧

一個發佈者的的應用,建立並且傳送訊息到 ___. 訂閱者的應用建立一個 ___ 到 topic 來取得訊息

  • topic, subscription
  • topic, topic
  • subscription, subscription
  • subscription, topic

Cloud Pub/Sub 是一個被設計為高度可靠以及可規模化的異步訊息服務




發佈訊息到 topic

  1. 在 Topics details 對話框的上方,點擊 PUBLISH MESSAGE。 你可能需要調寬瀏覽器的視窗來檢視 PUBLISH MESSAGE 選項

  1. 在 Message 欄位中輸入 Hello World, 然後點擊 Publish




檢視訊息

要檢視訊息,你將需要使用 subscription (MySub) 來從 topic (MyTopic) 取得訊息 (Hello World)

在命令行輸入以下指令

gcloud pubsub subscriptions pull --auto-ack MySub

訊息將會出現在輸出的 DATA 欄位

你建立了 Pub/Sub topic,並且發佈到這個 topic, 建立了 subscription, 然後使用 subscription 來取得在 topic 的資料

恭喜完成本教程!

Stackdriver Logging 的根本應用 MongoDB 學習筆記

留言

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×