Skip to content

Commit 32fb3b5

Browse files
Refine RabbitMQ documentation for clarity and consistency
1 parent b56ebca commit 32fb3b5

3 files changed

Lines changed: 35 additions & 6 deletions

File tree

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/background.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,4 @@ RabbitMQ helps decouple application components, improve scalability, and increas
2222

2323
RabbitMQ is widely used for **event-driven architectures**, **background job processing**, **microservices communication**, and **notification systems**. It integrates easily with many programming languages and platforms.
2424

25-
Learn more from the [RabbitMQ official website](https://www.rabbitmq.com/) and the [official documentation](https://www.rabbitmq.com/documentation.html).
25+
Learn more from the [RabbitMQ website](https://www.rabbitmq.com/) and the [RabbitMQ documentation](https://www.rabbitmq.com/documentation.html).

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/installation.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ layout: learningpathall
77
---
88

99
## Install RabbitMQ on GCP SUSE Arm64 VM
10-
This guide describes a **step-by-step installation of RabbitMQ** on a **Google Cloud Platform SUSE Linux Arm64 virtual machine**, using **RPM packages** for both **Erlang** and **RabbitMQ Server**.
10+
This guide describes the installation of RabbitMQ on a Google Cloud Platform SUSE Linux Arm64 virtual machine using RPM packages for both Erlang and RabbitMQ Server.
1111

1212
RabbitMQ needs Erlang to be installed before setting up the server.
1313

@@ -19,14 +19,14 @@ RabbitMQ needs Erlang to be installed before setting up the server.
1919
- Outbound internet access
2020

2121
### Refresh system repositories
22-
This step updates the systems package list so the operating system knows about the latest software available from its repositories.
22+
Update the system's package list to get the latest available software from repositories.
2323

2424
```console
2525
sudo zypper refresh
2626
```
2727

2828
### Install required system utilities
29-
You can install the basic tools needed to download and manage packages.
29+
Install the basic tools needed to download and manage packages.
3030

3131
```console
3232
sudo zypper install -y curl wget gnupg tar socat logrotate
@@ -123,6 +123,10 @@ sudo rabbitmqctl set_user_tags admin administrator
123123
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
124124
```
125125

126+
{{% notice Warning %}}
127+
Replace `StrongPassword123` with a strong, unique password. For production environments, use environment variables or a secrets management system instead of hardcoding passwords.
128+
{{% /notice %}}
129+
126130
**Log in to Management UI**
127131

128132
Now, test it from outside the VM. Open a web browser on your local machine (Chrome, Firefox, Edge, etc.) and enter the following URL and credentials in the address bar:

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/use-case2.md

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "RabbitMQ use case 2: WhatsApp Notification"
2+
title: "RabbitMQ use case 2: WhatsApp notification"
33
weight: 8
44

55
### FIXED, DO NOT MODIFY
@@ -59,7 +59,7 @@ exchange declared
5959

6060
This creates a durable queue to persist WhatsApp notification messages until consumed.
6161

62-
The output is similar to:
62+
You should see:
6363
```output
6464
queue declared
6565
```
@@ -265,3 +265,28 @@ You've implemented an asynchronous notification system using RabbitMQ with direc
265265
This pattern works well for targeted notifications (email, SMS, WhatsApp, push notifications) where routing needs to be simple and predictable. Each notification type routes to a dedicated queue using an exact-match routing key, providing reliable, guaranteed delivery.
266266

267267
The key difference from Use Case 1 is the routing approach: Use Case 1 uses topic exchange with wildcard routing (`order.*`) for flexible event streams, while Use Case 2 uses direct exchange with exact routing (`whatsapp`) for targeted notifications.
268+
269+
## Cleanup resources
270+
271+
When you're finished with this Learning Path, clean up your resources to avoid unnecessary charges:
272+
273+
**Stop RabbitMQ workers:**
274+
Press Ctrl+C in each terminal running a Python worker.
275+
276+
**Delete RabbitMQ resources:**
277+
278+
```console
279+
./rabbitmqadmin delete queue name=order.events
280+
./rabbitmqadmin delete queue name=whatsapp.notifications
281+
./rabbitmqadmin delete queue name=testqueue
282+
./rabbitmqadmin delete exchange name=events
283+
./rabbitmqadmin delete exchange name=notifications
284+
```
285+
286+
**Delete the Google Cloud VM:**
287+
288+
Navigate to **Compute Engine > VM Instances** in the Google Cloud Console, select your VM, and select **Delete**.
289+
290+
**Delete the firewall rule:**
291+
292+
Navigate to **VPC Network > Firewall**, find the `allow-tcp-15672` rule, and select **Delete**.

0 commit comments

Comments
 (0)