Trong bài này chúng ta sẽ sử dụng Google Cloud PubSub để publish message và nhận message đó từ Subscription.
Trước tiên chúng ta sẽ tạo Topic trong Google Cloud PubSub.
Tại trang Console, chọn Navigation menu -> Pub/Sub -> Topic, sau đó click Create Topic.
Nhập tên topic sau đó click CREATE TOPIC
Tiếp theo chúng ta sẽ tạo Subscription. Tại left panel, chọn Subscriptions -> Create Subscription
Nhập Subscription name, Topic ID là topic chúng ta vừa tạo ở trên. Sau đó click Create
Tiếp theo chúng ta sẽ tạo Project để tương tác với Google Cloud PubSub.
Tạo Project Spring Boot sử dụng Spring MVC và Thymeleaf.
Tại file pom.xml add library của google cloud pubsub như sau:
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-pubsub</artifactId>
<version>1.87.0</version>
</dependency>
Cấu trúc project sau khi hoàn thành:
Topic.java
TopicController.java
TopicService.java
publish.html
Thiếp theo chúng ta sẽ tạo Subscription để nhận message.
SubscriptionApp.java
Tai file pom.xml them plugin sau:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>worker</id>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>com.cloudace.vn.demo.pubsub.worker.SubscriptionApp</mainClass>
</configuration>
</execution>
</executions>
</plugin>
Start project Spring Boot:
mvn compile exec:java@worker
Start worker:
mvn spring-boot:run
mvn compile exec:java@worker
Start worker:
Truy cập vào http://localhost:8080/ , nhập message muốn publish sao đó click button Publish
Quay lại console của worker bạn sẽ thấy đc message.