GCPのサービス「Cloud Pub/Sub」の チュートリアルをやってみる

GCP(Google Cloud Platform) の Cloud Pub/Sub のクイックスタートをやってみました。

# 対象

* Cloud Pub/Subについて概要をさらっと確認したい方
* GCPのサービスに興味のある方

# 環境

* GCP

# Cloud Pub/Sub について
AWS でいうところの、[Amazon SNS](https://aws.amazon.com/jp/sns/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc)でしょうか？

https://cloud.google.com/pubsub/docs/overview

>Pub/Sub は、イベントを処理するサービスとイベントを生成するサービスを切り離す非同期メッセージング サービスです。

なるほど、メッセージのキューイングサービスでしょうか。。。

# クイックスタート
クイックスタート「クライアント ライブラリの使用」チュートリアルをやってみます。

https://cloud.google.com/pubsub/docs/quickstart-client-libraries

[インタラクティブチュートリアル](https://console.cloud.google.com/cloudpubsub?tutorial=pubsub_quickstart&_ga=2.37785443.1183358867.1624171321-1453468887.1623711172&_gac=1.53093978.1624486770.CjwKCAjwt8uGBhBAEiwAayu_9UoCqxIycOJhbBRGoIoLJvRUSmReNaYDkZYFriChlXUqsuEMTtf5MBoC9osQAvD_BwE)を選択します。

## 新規プロジェクト作成

Pub/SubようにGCPの新規プロジェクトを作成します。
予め作ってあるものを選択することもできます。
![スクリーンショット 2021-06-25 8.23.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/845f1b43-98fc-d00a-3edb-ea54587e5a5f.png)

プロジェクト名を入れて、CREATEを押下。
![スクリーンショット 2021-06-25 8.23.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/511eeac8-773b-b34b-31b6-3645731db68f.png)

新規プロジェクトでPub/Subサービスが作成されます。
![スクリーンショット 2021-06-25 8.30.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/e1680632-29cc-dab5-47c9-f4cb27dcca01.png)

# トピックの作成
Pub/Subサービスに、トピックを作成します。

## トピック作成
Topics→CREATE TOPICを選択。
![スクリーンショット 2021-06-25 8.34.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/d5b6776b-df04-283b-185e-458aeb947393.png)

トピック名を入力して、CREATE TOPIC ボタンを押下。
![スクリーンショット 2021-06-25 8.35.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/32811f55-6210-f2d2-7d8d-9c55c4482d20.png)

トピックが作成されて詳細が表示されます。
![スクリーンショット 2021-06-25 8.36.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/5640745d-492e-25ed-89e8-a3f056c8f3bb.png)


# サブスクリプションの作成
サブスクリプションを作成します。
作成したトピックから、CREATE SUBSCRIPTIONを選択。
![スクリーンショット 2021-06-25 8.40.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/9a983fed-1f4f-eed3-d00e-ca46397edace.png)
メニューから Create subscription を選択。
![スクリーンショット 2021-06-25 8.40.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/4b9d2410-5792-f0e0-f6e7-002531cef038.png)
Subscription IDを入力。
![スクリーンショット 2021-06-25 8.41.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/a8673ad5-ccd7-e355-a8ca-0c62d101be05.png)
ページの下の CREATE を押下。
![スクリーンショット 2021-06-25 8.42.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/c4b5db6c-b7f6-33f7-2765-ad672e1a3180.png)

サブスクリプションが作成されます。
![スクリーンショット 2021-06-25 8.45.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/9df95699-df25-6cbe-cf7f-e1999a999176.png)
![スクリーンショット 2021-06-25 8.47.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/933994be-6791-5b90-649b-041fc5e12ab9.png)

# メッセージの Publish
トピックにメッセージを2つ Publish します。

メニューTopics→作成したトピックを選択。
![スクリーンショット 2021-06-25 11.53.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/53e8e1d0-57ce-1ca0-5104-e05db8218e38.png)

メニューから PUBLISH MESSAGE を選択。
![スクリーンショット 2021-06-25 11.41.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/69ccdd20-d279-d35e-21d3-1c220e055e47.png)

Publish message画面が表示されます。
![スクリーンショット 2021-06-25 11.42.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/3052a823-542c-66f2-2b94-7bc4597ee3f3.png)

Message入力欄に、hello を入力して、PUBLISH を押下します。
![スクリーンショット 2021-06-25 11.43.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/15f58d36-91d7-385e-092b-e8e8b82682cc.png)

同様にもう1つメッセージを作成します。
goodby を入力して、PUBLISH を押下します。
![スクリーンショット 2021-06-25 11.44.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/94413283-7035-f266-245c-552b318c132f.png)

## メッセージの Pull
PublishしたメッセージをPullします。

メニューのSubscriptions→pubsub-tutorial-1-topic-sub2 を選択。
![スクリーンショット 2021-06-25 11.45.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/28b68b5f-a029-07e7-2d09-5f0e7f3ada08.png)

メニューからVIEW MESSAGES を選択。
![スクリーンショット 2021-06-25 11.46.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/4d1bc808-8a2e-7ccd-d620-aee90b1861ac.png)

Messages 画面が表示されるので、PULL を押下します。
メッセージがPullされます。
![スクリーンショット 2021-06-25 11.49.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/60644daf-7b71-d119-96d9-47741b160066.png)


# トピックの削除
トピックを削除してチュートリアルを終わります。

メニューから Topics → tutorial-1-topic → DELETE を押下します。
![スクリーンショット 2021-06-25 20.44.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/d030b279-fec2-b6af-5cef-03d1bc11a439.png)

delete欄に delete を入力。DELETEボタンを押下します。
![スクリーンショット 2021-06-25 20.51.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/214523/a0418bdd-648c-24c6-212b-98544dd846b7.png)

以上でチュートリアルは終わりです。
お疲れ様でした。

# 参考

https://cloud.google.com/pubsub/docs/overview