クライアント ライブラリを使用して Pub/Sub でメッセージをパブリッシュおよび受信する
このページでは、次の方法について説明します。
Google Cloud CLI を使用して、プロジェクトの作成、課金の有効化、Pub/Sub Lite API の有効化を行います。
Google Cloud CLI を使用して Lite 予約、Lite トピック、Lite サブスクリプションを作成する。
Go、Java、Python 用の Pub/Sub Lite クライアント ライブラリを使用してメッセージを送受信する。
始める前に
- Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google Cloud プロジェクトを作成または選択します。
-
Google Cloud プロジェクトを作成する
gcloud projects create PROJECT_ID
-
作成した Google Cloud プロジェクトを選択します。
gcloud config set project PROJECT_ID
-
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Pub/Sub Lite API を有効にします。
gcloud services enable pubsublite.googleapis.com
-
Google アカウントの認証情報を作成します。
gcloud auth application-default login
-
Google アカウントにロールを付与します。次の IAM ロールごとに次のコマンドを 1 回実行します。
roles/pubsublite.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
PROJECT_ID
は、実際のプロジェクト ID に置き換えます。EMAIL_ADDRESS
は実際のメールアドレスに置き換えます。ROLE
は、個々のロールに置き換えます。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google Cloud プロジェクトを作成または選択します。
-
Google Cloud プロジェクトを作成する
gcloud projects create PROJECT_ID
-
作成した Google Cloud プロジェクトを選択します。
gcloud config set project PROJECT_ID
-
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Pub/Sub Lite API を有効にします。
gcloud services enable pubsublite.googleapis.com
-
Google アカウントの認証情報を作成します。
gcloud auth application-default login
-
Google アカウントにロールを付与します。次の IAM ロールごとに次のコマンドを 1 回実行します。
roles/pubsublite.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
PROJECT_ID
は、実際のプロジェクト ID に置き換えます。EMAIL_ADDRESS
は実際のメールアドレスに置き換えます。ROLE
は、個々のロールに置き換えます。
クライアント ライブラリをインストールする
Go
go get cloud.google.com/go/pubsublite
Java
Maven を使用している場合は、次のものを pom.xml
ファイルに追加します。BOM の詳細については、Google Cloud Platform ライブラリ BOM をご覧ください。
Gradle を使用している場合は、次のものを依存関係に追加します。
sbt を使用している場合は、次のものを依存関係に追加します。
Visual Studio Code、IntelliJ または Eclipse を使用している場合は、次の IDE プラグインでプロジェクトにクライアント ライブラリを追加できます。
プラグインでは、サービス アカウントのキー管理などの追加機能も提供されます。詳細は各プラグインのドキュメントをご覧ください。
Python
pip install --upgrade google-cloud-pubsublite
Lite 予約の作成
Lite 予約を作成するには、gcloud pubsub lite-reservations create
コマンドを使用します。次のサンプルでは、testRes
という予約を作成します。
gcloud pubsub lite-reservations create testRes \ --location=us-central1 \ --throughput-capacity=1
リージョン Lite トピックを作成する
Lite トピックを作成するには、gcloud pubsub lite-topics create
コマンドを使用します。次のサンプルでは、testTopic
というトピックを作成します。
gcloud pubsub lite-topics create testTopic \ --location=us-central1 \ --partitions=1 \ --per-partition-bytes=30GiB \ --throughput-reservation=projects/PROJECT_ID/locations/us-central1/reservations/testRes \
以下を置き換えます。
PROJECT_ID: プロジェクトの ID
Lite サブスクリプションの作成
Lite サブスクリプションを作成するには、gcloud pubsub lite-subscriptions create
コマンドを使用します。次のサンプルでは、testSub
というサブスクリプションを作成します。
gcloud pubsub lite-subscriptions create testSub \ --location=us-central1 \ --topic=testTopic \ --delivery-requirement=deliver-immediately
メッセージを送信する
次のパブリッシャー アプリケーションを使用して、Lite トピックにメッセージを送信します。
Go
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Go 向けの手順に沿って設定を行ってください。詳細については、Pub/Sub Lite Go API のリファレンス ドキュメントをご覧ください。
Pub/Sub Lite に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Python
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Python 向けの手順に沿って設定を行ってください。詳細については、Pub/Sub Lite Python API のリファレンス ドキュメントをご覧ください。
Pub/Sub Lite に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
パブリッシャーは 100 件のメッセージを Lite トピックに送信し、Pub/Sub Lite サービスが受信したメッセージの数を出力します。
メッセージの受信
次のサブスクライバー アプリケーションを使用して、Lite サブスクリプションからメッセージを受信します。
Go
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Go 向けの手順に沿って設定を行ってください。詳細については、Pub/Sub Lite Go API のリファレンス ドキュメントをご覧ください。
Pub/Sub Lite に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Java 向けの手順に沿って設定を行ってください。詳細については、Pub/Sub Lite Java API のリファレンス ドキュメントをご覧ください。
Pub/Sub Lite に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
このサンプルを試す前に、Pub/Sub クイックスタート: クライアント ライブラリの使用にある Python 向けの手順に沿って設定を行ってください。詳細については、Pub/Sub Lite Python API のリファレンス ドキュメントをご覧ください。
Pub/Sub Lite に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
サブスクライバーはメッセージを受信すると、メッセージ ID とメッセージ データを出力します。
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、Google Cloud プロジェクトとそのリソースをまとめて削除してください。
- このガイドで使用したリソースの Google Cloud アカウントが変更されないようにするには、トピックとサブスクリプションを削除します。
gcloud pubsub lite-subscriptions delete testSub --location=us-central1 gcloud pubsub lite-topics delete testTopic --location=us-central1
-
作成した認証情報を取り消して、ローカル認証情報ファイルを削除します。
gcloud auth application-default revoke
-
(省略可)gcloud CLI から認証情報を取り消します。
gcloud auth revoke
次のステップ
- Lite トピックと Lite サブスクリプションの詳細を確認する。
- メッセージの送信と受信の詳細を確認する。
- クライアント ライブラリのコードサンプルを確認する。