Deploy a Message Queuing Solution With Google Cloud Pub/Sub

Lab Steps

Signing In to the Google Cloud Console
Understanding the Core Concepts of Cloud Pub/Sub
Creating the Pub/Sub Topic
Triggering a Cloud Functions From a Pub/Sub Topic
Creating the Pub/Sub Subscription
Publishing Messages to a Pub/Sub Topic
Import Messages From a Cloud Storage Text File

Ready for the real environment experience?

Time Limit1h


Google Cloud Pub/Sub is a scalable, durable event ingestion and message delivery system that allows you to create an infrastructure whose responsibility is to handle message queues. Pub/Sub delivers low-latency, durable messaging by using two core components: topics and subscriptions. You can create a topic where messages will be sent to, and subscriptions attached to the topics. All messages sent to a specific topic will be delivered to all the subscriptions attached. All the components that get messages from a subscription are called subscribers. For more detailed info about what is Cloud Pub/Sub, you can refer to the official GCP guide.

In this lab, you will understand the core components of a Pub/Sub system, you will create a topic and attach a subscription to it, you will send a message to the topic, and you will create a batch job using Cloud Dataflow to import messages to your topic from a text file stored in a Cloud Storage bucket.

Learning Objectives 

Upon completion of this lab you will be able to:

  • Understand what topics and subscriptions are in Pub/Sub
  • Define a topic
  • Create a subscription and attach it to a topic
  • Run a Cloud Dataflow job to import messages from a Cloud Storage bucket.

Intended Audience

This lab is intended for:

  • Google Cloud Associate Cloud Engineer (ACE) certification candidates
  • Solutions architects who want to define and deploy a message delivery system
  • Individuals who want to understand how a message delivery system works


This lab has no prerequisites.



April 14th, 2020 - Added a new lab step that lets the user create a Cloud Function triggered by the publish event to a Pub/Sub topic

Environment before
Environment after
About the Author
Learning paths7

Stefano studies Computer Science and is passionate about technology. He loves working with Cloud services and learning all the best practices for them. Google Cloud Platform and Amazon Web Services are the cloud providers he prefers. He is a Google Cloud Certified Associate Cloud Engineer. Node.js is the programming language he always uses to code. When he's not involved in studying or working, Stefano loves riding his motorbike and exploring new places.