Pada modul ini kita akan berlatih membuat Pub/Sub topics dan subscriptions. dan Mem-publish dan consume messages. Untuk mengikuti lab ini diperlukan GCP project. Kita akan berlatih menggunakan Cloud Console dan Shell.
Untuk akses Pub/Sub melalui console, pilih melalui burger menu.

Membuat Topics
Pada window Pub/Sub, tekan tombol Create Topic. Akan ditampilkan popup Create Topic. Masukan Topic ID, pada tutorial digunakan LabTopic. Untuk encryption gunakan Google-managed key. Kemudian tekan tombol Create Topic di pojok kanan bawah.

Topic baru berhasil dibuat. Sangat mudah.

Membuat Subscriptions
Selanjutnya membuat subscriptions. Kembali ke halaman Topic dengan menekan link Topics pada menu disebelah kiri. Pada list Topics, buat Subscriptions untuk Topic yang telah dibuat diatas dengan menenkan tombol dengan tiga titik.

Pada window Create Subscription, masukan Subscriptions ID, digunakan LabSub. Untuk setting lainnya gunakan default. Kemudian tekan tombol Create.

Publish Message
Setelah memiliki subscription yang dapat menerima message dari topic. Selanjutnya adalah membuat Publish Message.
Tekan tombol Publish Message.

Pada window Publish Message, masukan message yang Anda inginkan. Lalu tekan tombol Publish.

Sekarang message akan masuk dalam antrian Pub/Sub. Message dapat dilihat dengan menekan tombol View Messages.

Pada window View Messages, pilih Pub/Sub subcriptions yang telah dibuat diatas, yait LabSub. Karena kita menggunakan Pull, jika tombol Pull ditekan, tanpa memilih enable ack messages. Message akan tetap ada dalam queue.
Jika Anda enable ack messages, dan tombol Pull ditekan, maka message akan ke subcriber, kemudian bila sudah menerima signal ack, message akan dihapus dari antrian.

Untuk mengakses melalui shell, tekan tombol Cloud Shell.

Untuk menampilkan Pub/Sub Topics gunakan perintah
$ gcloud pubsub topics list
Untuk membuat topic baru, pada contoh digunakan nama topic LabTopic2
$ gcloud pubsub topics create LabTopic2
Untuk menghapus topic yang telah dibuat melalui console, gunakan perintah berikut:
$ gcloud pubsub topics delete LabTopic
Untuk membuat subcriptions gunakan perintah berikut, pada contoh digunakan LabSub3. Perhatikan kita perlu mendefinisikan topic dimana subcription akan dibuat.
$ gcloud pubsub subscriptions create --topic LabTopic2 LabSub3
Untuk melihat subcriptions yang telah dibuat gunakan perintah:
$ gcloud pubsub subcriptions list
Atau untuk melihat subcriptions per topic, pada contoh digunakan LabTopic2
$ gcloud pubsub topics list-subscriptions LabTopic2
Untuk publish message gunakan perintah
$ gcloud pubsub topics publish LabTopic2 --message "message goes here"
Untuk pull message gunakan perintah berikut, untuk mengaktifkan auto knowledge gunakan opsi –auto-ack
$ gcloud pubsub subscriptions pull LabSub3 --auto-ack
Untuk pull message lebih dari satu, gunakan opsi limit, pada contoh digunakan limit 2 messages.
$ gcloud pubsub subscriptions pull LabSub3 --auto-ack --limit=3
Jika Anda memiliki lebih dari 1 message, ketika menjalankan perintah diatas, tidak ada garansi urutan message. (Lihat contoh dibawah).

Terakhir jangan lupa untuk menghapus Pub/Sub service yang telah dibuat pada lab ini untuk mencegah billing.
$ gcloud pubsub topics delete LabTopic2
$ gcloud pubsub subcriptions delete LabSub3
Sampai disini kita sudah selesai latihan melalui Lab untuk membuat dan mengakses Pub/Sub melalui Console dan Shell.