Skip to main content

Key Concepts

KakaoCloud Pub/Sub is a non-installation message queue service for large-volume events and data analysis. You can classify and manage message data using topics and subscriptions.

Architecture

Image
Pub/Sub architecture

Message

A message is data and properties delivered to a subscription.

  • By default, messages are delivered at least once, regardless of the order.
  • Rarely, messages may be duplicated even after an acknowledgment request.
    (Duplicated messages will have the same unique message ID as the original message.)

Topic

A topic is an element that distinguishes a specific message or event type, and multiple subscriptions can be added to a single topic.

Default-Topic

Default-Topic is a topic provided by default in Pub/Sub, and provides event data generated in KakaoCloud, such as Cloud Trail.

Service agent

The Pub/Sub service agent is automatically created when the Pub/Sub service starts. For more details, refer to the Service agent account.

Subscription

Messages published to a topic can be received through a subscription. Three types of subscriptions are available:

TypeDescriptionAcknowledgment Process
PullA method where the user requests message delivery.
- Message delivery request and acknowledgment response
- Requires acknowledgment (ack) after a message delivery request.
- Message retransmission:
  ᄂ If acknowledgment is not processed within the response wait time
  ᄂ If a request to modify the acknowledgment deadline is made (action: skip)
PushA method where Pub/Sub sends messages.
- Requires an endpoint server (HTTP/HTTPS) to receive messages.
- Security group inbound policy settings for resources connected to the endpoint must be configured to allow Push.
- Message Push is only possible through endpoint URLs in each region using KakaoCloud Public IPs.
- Automatically acknowledged if an HTTP response status code (102, 200, 201, 202, 204) is received.
- Message retransmission:
  ᄂ If no HTTP response is received from the user-registered endpoint within the response wait time
  ᄂ If an HTTP response status code other than (102, 200, 201, 202, 204) is received, messages are immediately retransmitted
Object StorageA method where Pub/Sub exports messages to a bucket.
- Requires an Object Storage bucket to be created for message uploads
No acknowledgment process is required

Subscription status

Detailed information about subscription statuses.

User Topic
StatusDescription
ActiveSubscription is active.
CreatingIn progress (subscription creation).
DeletingIn progress (subscription deletion).
UpdatingIn progress (subscription update).
SeekingIn progress (rewinding subscription to a specific point in time).
ExpiredThe subscription is inactive due to no operations and is disabled by the Expiration Policy.
- Internal resources are deleted, and only subscription deletion is possible afterward.
* Expiration Policy:
- Pull, Push types: Transitioned to Expired if the unprocessed message count remains over 10,000 for 1 hour.
- Object Storage type: Does not transition to Expired.
InvalidBucketOccurs when the bucket linked to the Object Storage subscription is deleted.
- The status changes to Export stopped, and the bucket information can be updated for reuse.
UnauthorizedOccurs when the permissions of the bucket linked to the Object Storage subscription are changed.
- The status changes to Export stopped, and the bucket permissions can be updated for reuse.
Default-Topic
StatusDescription
ActiveSubscription is active.
In ProgressIn progress.
ErrorAn issue has occurred, making the subscription inoperable.
- Only subscription deletion is possible.

Subscriber

A subject (subscriber) that receives and processes messages for a specific topic. A subscriber subscribes to a specific topic and receives notifications and processes messages whenever a new message is published to the topic.

Publisher

A subject (publisher) that creates data or events and publishes them to the Pub/Sub system. A publisher creates or collects messages on a specific topic and sends them to all subscribers who have subscribed to that topic.