arrow_back

Pub/Sub: Qwik Start - Python

Login Gabung
Uji dan bagikan pengetahuan Anda kepada komunitas kami.
done
Dapatkan akses ke lebih dari 700 lab praktik, badge keahlian, dan kursus

Pub/Sub: Qwik Start - Python

Lab 30 menit universal_currency_alt 1 Kredit show_chart Pengantar
info Lab ini mungkin menggabungkan alat AI untuk mendukung pembelajaran Anda.
Uji dan bagikan pengetahuan Anda kepada komunitas kami.
done
Dapatkan akses ke lebih dari 700 lab praktik, badge keahlian, dan kursus

GSP094

Lab Mandiri Google Cloud

Ringkasan

Layanan Pub/Sub memungkinkan aplikasi bertukar pesan dengan andal, cepat, dan asinkron. Untuk melakukannya, produser data memublikasikan pesan ke topik Cloud Pub/Sub. Kemudian, klien pelanggan membuat langganan ke topik tersebut dan menggunakan pesan dari langganan. Cloud Pub/Sub menyimpan pesan yang tidak dapat dikirim dengan lancar hingga tujuh hari.

Di lab ini, Anda akan mempelajari cara mulai memublikasikan pesan dengan Pub/Sub menggunakan library klien Python.

Yang akan Anda lakukan

Di lab ini, Anda akan melakukan hal-hal berikut:

  • Mempelajari dasar-dasar Pub/Sub
  • Membuat, menghapus, dan membuat daftar topik dan langganan Pub/Sub
  • Memublikasikan pesan ke topik.
  • Menggunakan pelanggan pull untuk membuat output setiap pesan topik.

Penyiapan dan Persyaratan

Sebelum mengklik tombol Mulai Lab

Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer, yang dimulai saat Anda mengklik Start Lab, akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.

Lab praktik ini dapat Anda gunakan untuk melakukan sendiri aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.

Untuk menyelesaikan lab ini, Anda memerlukan:

  • Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
  • Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Jika Anda sudah memiliki project atau akun pribadi Google Cloud, jangan menggunakannya untuk lab ini agar terhindar dari tagihan ekstra pada akun Anda.

Cara memulai lab dan login ke Google Cloud Console

  1. Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran. Di sebelah kiri adalah panel Lab Details dengan info berikut:

    • Tombol Open Google Cloud console
    • Waktu tersisa
    • Kredensial sementara yang harus Anda gunakan untuk lab ini
    • Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
  2. Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).

    Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.

    Tips: Atur tab di jendela terpisah secara berdampingan.

    Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
  3. Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.

    {{{user_0.username | "Username"}}}

    Anda juga dapat menemukan Username di panel Lab Details.

  4. Klik Next.

  5. Salin Password di bawah dan tempel ke dialog Welcome.

    {{{user_0.password | "Password"}}}

    Anda juga dapat menemukan Password di panel Lab Details.

  6. Klik Next.

    Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
  7. Klik halaman berikutnya:

    • Setujui persyaratan dan ketentuan.
    • Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
    • Jangan mendaftar uji coba gratis.

Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.

Catatan: Untuk melihat menu dengan daftar produk dan layanan Google Cloud, klik Navigation menu di kiri atas. Ikon Navigation menu

Mengaktifkan Cloud Shell

Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.

  1. Klik Activate Cloud Shell Ikon Activate Cloud Shell di bagian atas konsol Google Cloud.

Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke PROJECT_ID Anda. Output berisi baris yang mendeklarasikan PROJECT_ID untuk sesi ini:

Project Cloud Platform Anda dalam sesi ini disetel ke YOUR_PROJECT_ID

gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.

  1. (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
  1. Klik Authorize.

  2. Output Anda sekarang akan terlihat seperti ini:

Output:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net Untuk menyetel akun aktif, jalankan: $ gcloud config set account `ACCOUNT`
  1. (Opsional) Anda dapat menampilkan daftar project ID dengan perintah ini:
gcloud config list project

Output:

[core] project = <project_ID>

Contoh output:

[core] project = qwiklabs-gcp-44776a13dea667a6 Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.

Tugas 1. Membuat lingkungan virtual

Lingkungan virtual python digunakan untuk mengisolasi penginstalan paket dari sistem.

  1. Instal lingkungan virtualenv:
sudo apt-get install -y virtualenv
  1. Bangun lingkungan virtual:
python3 -m venv venv
  1. Aktifkan lingkungan virtual.
source venv/bin/activate

Tugas 2. Menginstal library klien

  1. Jalankan perintah berikut untuk menginstal library klien:
pip install --upgrade google-cloud-pubsub
  1. Dapatkan kode contoh dengan meng-clone repositori GitHub:
git clone https://github.com/googleapis/python-pubsub.git
  1. Buka direktori:
cd python-pubsub/samples/snippets

Tugas 3. Pub/Sub - Dasar-Dasar

Pub/Sub adalah layanan pesan global asinkron. Ada tiga istilah yang sering muncul dalam Pub/Sub: topic, publishing, dan subscribing.

Topik (topic) adalah string bersama yang memungkinkan aplikasi terhubung satu sama lain melalui thread umum.

Penayang (publishers) mengirimkan (atau memublikasikan) pesan ke topik Pub/Sub. Kemudian, pelanggan (subscribers) akan membuat langganan ke thread tersebut, tempat mereka akan menarik pesan dari topik atau mengonfigurasi webhook untuk langganan push. Setiap pelanggan harus mengonfirmasi setiap pesan dalam jangka waktu yang dapat dikonfigurasi.

Singkatnya, penayang akan membuat dan mengirim pesan ke topik, sedangkan pelanggan akan membuat langganan topik untuk menerima pesan dari penayang tersebut.

Pub/Sub di Google Cloud

Pub/Sub sudah diinstal di Cloud Shell sehingga Anda tidak memerlukan penginstalan atau konfigurasi untuk mulai menggunakan layanan ini. Di lab ini, Anda akan menggunakan Python untuk membuat topik, pelanggan, lalu melihat pesan. Anda akan menggunakan perintah gcloud untuk memublikasikan pesan ke topik.

Tugas 4. Membuat topik

Untuk memublikasikan data ke Pub/Sub, Anda perlu membuat topik, lalu mengonfigurasi penayang untuk topik tersebut.

  1. Di Cloud Shell, Project ID akan otomatis disimpan dalam variabel lingkungan GOOGLE_CLOUD_PROJECT:
echo $GOOGLE_CLOUD_PROJECT
  1. Pastikan output-nya sama seperti Project ID dalam CONNECTION DETAILS Anda.

publisher.py adalah skrip yang menunjukkan cara menjalankan operasi dasar pada topik dengan Cloud Pub/Sub API. Lihat konten skrip penayang:

cat publisher.py Catatan: Alternatifnya, Anda dapat menggunakan editor shell yang terinstal di Cloud Shell, seperti nano atau vim, atau menggunakan editor kode Cloud Shell untuk melihat python-pubsub/samples/snippets/publisher.py.
  1. Untuk mengetahui informasi tentang skrip penayang:
python publisher.py -h

Contoh output:

usage: publisher.py [-h] project {list,create,delete,publish,publish-with-custom-attributes,publish-with-futures,publish-with-error-handler,publish-with-batch-settings} ... This application demonstrates how to perform basic operations on topics with the Cloud Pub/Sub API. For more information, see the README.md under /pubsub and the documentation at https://cloud.google.com/pubsub/docs. positional arguments: project Your Google Cloud project ID {list,create,delete,publish,publish-with-custom-attributes,publish-with-futures,publish-with-error-handler,publish-with-batch-settings} list Lists all Pub/Sub topics in the given project. create Create a new Pub/Sub topic. delete Deletes an existing Pub/Sub topic. publish Publishes multiple messages to a Pub/Sub topic. publish-with-custom-attributes Publishes multiple messages with custom attributes to a Pub/Sub topic. publish-with-futures Publishes multiple messages to a Pub/Sub topic and prints their message IDs. publish-with-error-handler Publishes multiple messages to a Pub/Sub topic with an error handler. publish-with-batch-settings Publishes multiple messages to a Pub/Sub topic with batch settings. optional arguments: -h, --help show this help message and exit
  1. Jalankan skrip penayang untuk membuat Topik Pub/Sub:
python publisher.py $GOOGLE_CLOUD_PROJECT create MyTopic

Contoh output:

Topic created: name: "projects/qwiklabs-gcp-fe27729bc161fb22/topics/MyTopic"

Menguji Tugas yang Telah Diselesaikan

Klik Check my progress untuk memverifikasi tugas yang telah dijalankan. Jika berhasil membuat topik Cloud Pub/Sub, Anda akan melihat skor penilaian.

Membuat topik.
  1. Perintah ini akan menampilkan daftar semua topik Pub/Sub dalam project yang ditentukan:
python publisher.py $GOOGLE_CLOUD_PROJECT list

Contoh output:

name: "projects/qwiklabs-gcp-fe27729bc161fb22/topics/MyTopic"

Anda juga dapat melihat topik yang baru saja dibuat di Cloud Console.

  1. Buka Navigation menu > Pub/Sub > Topics.

Anda akan melihat MyTopic.

Tugas 5. Membuat langganan

  1. Buat langganan Pub/Sub untuk topik dengan skrip subscriber.py:
python subscriber.py $GOOGLE_CLOUD_PROJECT create MyTopic MySub

Menguji Tugas yang Telah Diselesaikan

Klik Check my progress untuk memverifikasi tugas yang telah dijalankan. Jika berhasil membuat langganan Cloud Pub/Sub, Anda akan melihat skor penilaian.

Membuat langganan.
  1. Perintah ini akan menampilkan daftar pelanggan dalam project yang ditentukan:
python subscriber.py $GOOGLE_CLOUD_PROJECT list-in-project

Anda hanya akan melihat satu langganan karena hanya membuat satu langganan.

Contoh output:

projects/qwiklabs-gcp-7877af129f04d8b3/subscriptions/MySub
  1. Periksa langganan yang baru saja Anda buat di konsol. Di panel sebelah kiri, klik Subscriptions. Anda akan melihat nama langganan dan detail lainnya.

  2. Untuk mengetahui informasi tentang skrip subscriber:

python subscriber.py -h

Output:

usage: subscriber.py [-h] project {list_in_topic,list_in_project,create,create-push,delete,update,receive,receive-custom-attributes,receive-flow-control,receive-synchronously,listen_for_errors} ... This application demonstrates how to perform basic operations on subscriptions with the Cloud Pub/Sub API. For more information, see the README.md under /pubsub and the documentation at https://cloud.google.com/pubsub/docs. positional arguments: project Your Google Cloud project ID {list_in_topic,list_in_project,create,create-push,delete,update,receive,receive-custom-attributes,receive-flow-control,receive-synchronously,listen_for_errors} list_in_topic Lists all subscriptions for a given topic. list_in_project Lists all subscriptions in the current project. create Create a new pull subscription on the given topic. create-push Create a new push subscription on the given topic. delete Deletes an existing Pub/Sub topic. update Updates an existing Pub/Sub subscription's push endpoint URL. Note that certain properties of a subscription, such as its topic, are not modifiable. receive Receives messages from a pull subscription. receive-custom-attributes Receives messages from a pull subscription. receive-flow-control Receives messages from a pull subscription with flow control. receive-synchronously Pulling messages synchronously. listen_for_errors Receives messages and catches errors from a pull subscription. optional arguments: -h, --help show this help message and exit

Tugas 6. Memublikasikan pesan

Setelah menyiapkan MyTopic (topik) dan langganan ke MyTopic (MySub), gunakan perintah gcloud untuk memublikasikan pesan ke MyTopic.

  1. Publikasikan pesan bertuliskan "Hello" ke MyTopic:
gcloud pubsub topics publish MyTopic --message "Hello"
  1. Publikasikan beberapa pesan lain ke MyTopic—jalankan perintah berikut (ganti <YOUR NAME> dengan nama Anda dan <FOOD> dengan makanan yang Anda inginkan):
gcloud pubsub topics publish MyTopic --message "Publisher's name is <YOUR NAME>" gcloud pubsub topics publish MyTopic --message "Publisher likes to eat <FOOD>" gcloud pubsub topics publish MyTopic --message "Publisher thinks Pub/Sub is awesome"

Tugas 7. Melihat pesan

Setelah memublikasikan pesan ke MyTopic, tarik dan lihat pesan tersebut menggunakan MySub.

  1. Gunakan MySub untuk menarik pesan dari MyTopic:
python subscriber.py $GOOGLE_CLOUD_PROJECT receive MySub

Contoh output:

Listening for messages on projects/qwiklabs-gcp-7877af129f04d8b3/subscriptions/MySub Received message: Message { data: 'Publisher thinks Pub/Sub is awesome' attributes: {} } Received message: Message { data: 'Hello' attributes: {} } Received message: Message { data: "Publisher's name is Harry" attributes: {} } Received message: Message { data: 'Publisher likes to eat cheese' attributes: {} }
  1. Klik Ctrl+c untuk berhenti memproses.

Tugas 8. Menguji pemahaman Anda

Di bawah ini terdapat beberapa pertanyaan pilihan ganda untuk memperkuat pemahaman Anda tentang konsep lab ini. Jawab pertanyaan tersebut sebaik mungkin.

Selamat!

Anda telah menggunakan Python untuk membuat topik Pub/Sub, memublikasikan ke topik, membuat langganan, lalu menggunakan langganan untuk menarik data dari topik.

Langkah berikutnya/Pelajari lebih lanjut

Sebagai pelengkap Pub/Sub, Pub/Sub Lite adalah layanan zona untuk sistem pesan dengan pola traffic yang dapat diprediksi. Jika Anda memublikasikan pesan sebesar 1 MiB-1 GiB per detik, Pub/Sub Lite adalah opsi hemat biaya untuk penyerapan peristiwa bervolume tinggi. Coba Pub/Sub Lite dalam lab ini:

Lab ini merupakan bagian dari rangkaian lab yang disebut Qwik Start. Lab ini dirancang agar Anda dapat mencoba berbagai fitur yang tersedia dengan Google Cloud. Telusuri "Qwik Starts" di katalog Google Cloud Skills Boost untuk menemukan lab berikutnya yang ingin Anda ikuti.

Sertifikasi dan pelatihan Google Cloud

...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.

Manual Terakhir Diperbarui pada 13 Februari 2024

Lab Terakhir Diuji pada 22 September 2023

Hak cipta 2024 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.

Konten ini tidak tersedia untuk saat ini

Kami akan memberi tahu Anda melalui email saat konten tersedia

Bagus!

Kami akan menghubungi Anda melalui email saat konten tersedia