Updated on 2024-11-14 GMT+08:00

Creating a RocketMQ Topic

A topic is the basic unit for sending and receiving messages. After purchasing a RocketMQ instance, you must manually create topics before creating and retrieving messages.

Prerequisites

A RocketMQ instance has been purchased.

Creating a Topic

  1. Log in to the console.
  2. Click in the upper left corner to select a region.

    Select the region where your RocketMQ instance is located.

  3. Click and choose Middleware > Distributed Message Service for RocketMQ to open the console of DMS for RocketMQ.
  4. Click a RocketMQ instance to go to the instance details page.
  5. In the navigation pane, choose Topics.
  6. Click Create Topic.
  7. Configure the topic name and other parameters by referring to Table 1 or Table 2.

    Figure 1 Creating a topic (RocketMQ 4.8.0)
    Figure 2 Creating a topic (RocketMQ 5.x)
    Table 1 Topic parameters (RocketMQ 4.8.0)

    Parameter

    Description

    Topic Name

    Name of the topic.

    A topic name must meet the following requirements:
    • Contains 3 to 64 characters.
    • Contains only letters, digits, percent signs (%), vertical bars (|), hyphens (-), and underscores (_).
    • Cannot start with rmq_sys_.
    • Cannot be the same as the following strings:
      • TBW102
      • SCHEDULE_TOPIC_XXXX
      • BenchmarkTest
      • RMQ_SYS_TRANS_HALF_TOPIC
      • RMQ_SYS_TRACE_TOPIC
      • RMQ_SYS_TRANS_OP_HALF_TOPIC
      • TRANS_CHECK_MAX_TIME_TOPIC
      • SELF_TEST_TOPIC
      • OFFSET_MOVED_EVENT

    The topic name must be unique. Otherwise, the topic cannot be created.

    Once the topic is created, you cannot modify its name.

    NOTE:

    A percent (%) or vertical bar (|) contained in a topic name will be converted to an underscore (_) by Cloud Eye. For example, if a topic name is test%01, it will be displayed as test_01 on Cloud Eye.

    Permission

    Topic permission, which can be publish/subscribe, publish, or subscribe.

    Brokers

    Specify the broker to create the topic on, and the number of queues in the topic.

    If the instance is deployed on multiple brokers, click Add to add more brokers and set the number of queues in the topic.

    To add associated brokers, increase the broker quantity. For details, see Modifying RocketMQ Specifications. Increasing the broker quantity increases the maximum topics supported. For example, increasing the broker quantity from 1 to 2 increases the maximum topics from 4,000 of one broker to 8,000 of two brokers.

    Description

    Topic description.

    The value contains 0 to 200 characters.

    Table 2 Topic parameters (RocketMQ 5.x)

    Parameter

    Description

    Topic Name

    Name of the topic.

    A topic name must meet the following requirements:
    • Contains 3 to 64 characters.
    • Contains only letters, digits, percent signs (%), vertical bars (|), hyphens (-), and underscores (_).
    • Cannot start with rmq_sys_.
    • Cannot be the same as the following strings:
      • TBW102
      • SCHEDULE_TOPIC_XXXX
      • BenchmarkTest
      • RMQ_SYS_TRANS_HALF_TOPIC
      • RMQ_SYS_TRACE_TOPIC
      • RMQ_SYS_TRANS_OP_HALF_TOPIC
      • TRANS_CHECK_MAX_TIME_TOPIC
      • SELF_TEST_TOPIC
      • OFFSET_MOVED_EVENT

    The topic name must be unique. Otherwise, the topic cannot be created.

    Once the topic is created, you cannot modify its name.

    Message Type

    Options: Normal, Ordered, Scheduled, and Transactional.

    • Normal messages: Messages that do not have any features of scheduled messages, ordered messages, or transactional messages.
    • Scheduled messages: Messages that are delivered to consumers only after a specific period after being sent from producers to DMS for RocketMQ.
    • Ordered messages: Messages that are consumed in the exact order that they are produced.
    • Transactional messages: Messages that achieve eventual consistency, delivering distributed transaction processing similar to X/Open XA.

    Description

    Topic description.

    The value contains 0 to 200 characters.

  8. Click OK.