Todos los productos
Search
Centro de documentos

ApsaraMQ for RocketMQ:Set up the demo project for ApsaraMQ for RocketMQ

Última actualización: Sep 04, 2026

Compile y ejecute un proyecto de prueba con el SDK de cliente TCP para Java. El proyecto de demostración incluye ejemplos funcionales para cinco tipos de mensajes: normales, ordenados, transaccionales, programados y diferidos, en Java, Spring y Spring Boot.

Requisitos previos

Antes de empezar, asegúrese de contar con lo siguiente:

Configurar el proyecto de demostración

Paso 1: Importar el proyecto

Importe los archivos del proyecto de demostración en IntelliJ IDEA.

Paso 2: Actualizar la versión del SDK

En pom.xml, actualice la dependencia del SDK de cliente TCP para Java a la versión más reciente. Para consultar las versiones disponibles, vea Notas de la versión.

<dependency>
    <groupId>com.aliyun.openservices</groupId>
    <artifactId>ons-client</artifactId>
    <!--Replace with the latest version from the release notes-->
    <version>1.8.8.5.Final</version>
</dependency>

Paso 3: Configurar la clase MqConfig

Establezca los siguientes campos en la clase MqConfig para que coincidan con los recursos que creó:

public static final String TOPIC = "<your-topic>";
public static final String GROUP_ID = "<your-group-id>";
public static final String ORDER_TOPIC = "<your-order-topic>";
public static final String ORDER_GROUP_ID = "<your-order-group-id>";
public static final String ACCESS_KEY = "<your-access-key>";
public static final String SECRET_KEY = "<your-secret-key>";
public static final String TAG = "<your-message-tag>";
public static final String NAMESRV_ADDR = "<your-tcp-endpoint>";

Reemplace los marcadores de posición con sus valores reales:

Marcador de posición

Descripción

Dónde encontrarlo

<your-topic>

Tema para mensajes normales y transaccionales

ApsaraMQ for RocketMQ console > su instancia > Topics

<your-group-id>

ID del grupo de consumidores

ApsaraMQ for RocketMQ console > su instancia > Groups

<your-order-topic>

Tema para mensajes ordenados

Igual que el anterior (cree un tema separado para mensajes ordenados)

<your-order-group-id>

Grupo de consumidores para mensajes ordenados

Igual que el anterior

<your-access-key>

AccessKey ID de su cuenta de Alibaba Cloud

Consulte Crear un par de AccessKey

<your-secret-key>

AccessKey secret de su cuenta de Alibaba Cloud

Igual que el anterior

<your-message-tag>

Etiqueta de mensaje personalizada para filtrado

Cualquier valor de cadena

<your-tcp-endpoint>

Endpoint TCP de su instancia

Página ApsaraMQ for RocketMQ console > su instancia > Instance Details > sección TCP Endpoint

También puede utilizar el par de AccessKey de un usuario de RAM que tenga permisos sobre el tema. Para obtener detalles sobre los parámetros de configuración disponibles, consulte Métodos y parámetros .

Paso 4: Configurar common.xml (solo para Spring y Spring Boot)

Si planea usar los ejemplos de Spring o Spring Boot, actualice el archivo common.xml con la información de sus recursos:

<props>
    <prop key="AccessKey">XXX</prop> <!--Replace with your AccessKey ID-->
    <prop key="SecretKey">XXX</prop> <!--Replace with your AccessKey secret-->
    <prop key="GROUP_ID">XXX</prop> <!--Replace with your consumer group ID-->
    <prop key="Topic">XXX</prop> <!--Replace with your topic-->
    <prop key="NAMESRV_ADDR">XXX</prop> <!--Replace with your TCP endpoint-->
</props>

Enviar y recibir mensajes

Importante

El proyecto de demostración ejecuta productores y consumidores en un solo hilo. Para sistemas de producción, ejecute los productores y consumidores en hilos o hosts separados. Para ejemplos con múltiples hilos, consulte Enviar mensajes mediante varios hilos.

Ejecute cada ejemplo llamando al método main de la clase correspondiente.

Enviar mensajes

Ejecute la clase de productor que corresponda a su tipo de mensaje y framework:

**Tipo de mensaje**

**Java**

**Spring**

**Spring Boot**

Normal

SimpleMQProducer

ProducerClient

ProducerClient

Transaccional

SimpleTransactionProducer

TransactionProducerClient

TransactionProducerClient

Ordenado (FIFO)

SimpleOrderProducer

OrderProducerClient

OrderProducerClient

Programado y diferido

MQTimerProducer

No compatible

No compatible

Detalles por tipo de mensaje:

  • Mensajes transaccionales: La clase LocalTransactionCheckerImpl gestiona las comprobaciones de estado de la transacción local. Para conocer el flujo de trabajo completo, consulte Enviar y recibir mensajes transaccionales.

  • Mensajes ordenados: Los mensajes se envían y consumen en orden FIFO (first-in-first-out). Para más detalles, consulte Enviar y suscribirse a mensajes ordenados.

  • Mensajes programados y diferidos: La clase MQTimerProducer entrega los mensajes tras un retraso predeterminado de 3 segundos. El retraso máximo configurable es de 40 días. Para más detalles, consulte Enviar y recibir mensajes programados.

Comprobar el envío de mensajes

Después de enviar los mensajes, vaya a la consola de ApsaraMQ for RocketMQ y consulte los mensajes por tema. Los mensajes enviados deberían aparecer en los resultados.

Recibir mensajes

Ejecute la clase de consumidor que corresponda a su tipo de mensaje y framework:

**Tipo de mensaje**

**Java**

**Spring**

**Spring Boot**

Normal

SimpleMQConsumer

ConsumerClient

ConsumerClient

Transaccional

SimpleMQConsumer

ConsumerClient

ConsumerClient

Ordenado (FIFO)

SimpleOrderConsumer

OrderConsumerClient

OrderConsumerClient

Programado y diferido

SimpleMQConsumer

No compatible

No compatible

La inicialización de la clase tarda unos segundos al arrancar. Este comportamiento es esperado y solo ocurre una vez; en producción, las clases se inicializan únicamente durante el inicio de la aplicación.

Comprobar la recepción de mensajes

Una entrada de registro confirma que el consumidor recibió el mensaje. Para verificarlo más a fondo, consulte el estado de los consumidores en la consola de ApsaraMQ for RocketMQ. Los consumidores que inició deberían aparecer como conectados y suscritos al tema.

Pasos siguientes