
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Create a Pub/Sub topic
/ 5
Create Pub/Sub Subscription
/ 5
Pub/Sub は、アプリケーションやサービスの間でイベントデータを交換するためのメッセージング サービスです。送信者と受信者を分離することにより、独立して作成されたアプリケーション間で、高可用性が確保された安全な通信を行えます。Pub/Sub によるメッセージングは低レイテンシで耐久性に優れており、デベロッパーは一般的に、非同期ワークフローの実装、イベント通知の配信、さまざまなプロセスやデバイスからのデータ ストリーミングに使用しています。
このラボの内容は次のとおりです。
これは入門レベルのラボです。Pub/Sub の設定と利用の基礎を学ぶもので、この Google Cloud サービスを使用した経験がほとんど、またはまったくないことを前提としています。
こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。
このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウでリンクを開く] を選択します)。
ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
[ラボの詳細] パネルでも [ユーザー名] を確認できます。
[次へ] をクリックします。
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
[ラボの詳細] パネルでも [パスワード] を確認できます。
[次へ] をクリックします。
その後次のように進みます。
その後、このタブで Google Cloud コンソールが開きます。
Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。
接続した時点で認証が完了しており、プロジェクトに各自の PROJECT_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。
gcloud
は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。
[承認] をクリックします。
出力は次のようになります。
出力:
出力:
出力例:
gcloud
ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。
前述のように、Pub/Sub は非同期のグローバル メッセージング サービスです。Pub/Sub では、topic
、publish
、subscription
という 3 つのキーワードが頻出します。
topic
は、複数のアプリケーションが共通のスレッドを通じて相互に接続できるようにする、共有文字列です。
パブリッシャーは、メッセージを Cloud Pub/Sub トピックに push(publish
)します。
サブスクライバーは、そのトピックへの「subscription
」を作成し、サブスクリプションからメッセージを pull するか、push サブスクリプション用の Webhook を構成します。メッセージは、構成可能な特定の期間内に各サブスクライバーが確認する必要があります。
まとめると、プロデューサーはトピックにメッセージをパブリッシュし、コンシューマーはトピックに対するサブスクリプションを作成してメッセージを受信します。
Pub/Sub は Cloud Shell にプリインストールされているので、このサービスを利用するために必要なインストールおよび構成はありません。
myTopic
というトピックを作成します。完了したタスクをテストする
[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが付与されます。
Test1
と Test2
という 2 つのトピックを作成します。出力は次のようになります。
Test1
と Test2
を削除します。gcloud pubsub topics list
コマンドを実行して、上記のトピックが削除されたことを確認します。出力は次のようになります。
これでトピックの作成、表示、削除ができるようになりました。次はサブスクリプションの作業に進みます。
myTopic
へのサブスクリプション mySubscription
を作成します。完了したタスクをテストする
[進行状況を確認] をクリックして、実行したタスクを確認します。タスクが正常に完了すると、評価スコアが付与されます。
myTopic
に 2 つのサブスクリプションを追加します。次のコマンドを実行して、Test1
と Test2
のサブスクリプションを作成します。出力は次のようになります。
理解度チェック
今回のラボで学習した内容の理解を深めていただくため、以下の多肢選択問題を用意しました。正解を目指して頑張ってください。
Test1
と Test2
の各サブスクリプションを削除していきます。次のコマンドを実行します。Test1
と Test2
の各サブスクリプションが削除されたことを確認します。もう一度 list-subscriptions
コマンドを実行します。出力は次のようになります。
次に、Pub/Sub トピックにメッセージをパブリッシュする方法を学習します。
myTopic
)に「Hello」
というメッセージをパブリッシュします。myTopic
にパブリッシュするため、次のコマンドを実行します(<YOUR NAME>
にはご自分の名前、<FOOD>
には好きな食べ物を指定します)。次に、pull
コマンドを使用して、トピックからメッセージを取得します。pull コマンドはサブスクリプション ベースです。つまり、以前にトピック myTopic
へのサブスクリプション mySubscription
を設定したため、コマンドは正常に機能するはずです。
出力は次のようになります。
何が起きているのでしょうか。トピックに 4 つのメッセージをパブリッシュしたはずですが、1 つのメッセージしか出力されていません。
ここで、デベロッパーがつまづくことが多い pull
コマンドの機能の注意点を挙げておきましょう。
上記の 2 点目の詳細を確認するために、最後のコマンドをさらに 3 回実行してみると、パブリッシュしたメッセージが順番に出力されることがわかります。
さらに 4 回目を実行すると、次のように、返すメッセージがないことが出力に示されます。
次の最後のセクションでは、flag
を指定して、トピックから複数のメッセージを pull する方法を学びます。
直前の例でトピックからすべてのメッセージを pull したため、myTopic
にいくつかメッセージを入力します。
flag
をコマンドに追加すると、1 つのリクエストで 3 つのメッセージをすべて出力できます。気づかなかったかもしれませんが、実はこれまでずっとフラグを使っていました。pull
コマンドの --auto-ack
の部分がフラグで、メッセージを枠内で表示する書式設定をこのフラグで行っていました。
さらに limit
も、pull するメッセージ数に上限を設定するフラグです。
limit
フラグを指定して pull コマンドを実行します。出力は次のようになります。
ここでは、Pub/Sub コマンドにフラグを追加して、より多くのメッセージを出力する方法について学び、Pub/Sub マスターへの道をまた一歩、前進しました。
このラボでは、Pub/Sub のトピック、サブスクリプション、pull コマンド、フラグの基礎について学びました。
このラボは、Google Cloud の多くの機能を体験できる「Qwik Start」と呼ばれるラボシリーズの一部です。ラボカタログで「Qwik Start」を検索し、興味のあるラボを探してみてください。
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2024 年 2 月 13 日
ラボの最終テスト日: 2023 年 5 月 25 日
Copyright 2025 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
One lab at a time
Confirm to end all existing labs and start this one