Tüm Ürünler
Search
Belge Merkezi

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

Son Güncelleme:Oct 04, 2026

Java için TCP istemci SDK'sını kullanarak bir test projesi oluşturun ve çalıştırın. Demo projesi; Java, Spring ve Spring Boot ortamlarında normal, sıralı, işlem bazlı, zamanlanmış ve gecikmeli olmak üzere beş mesaj türü için çalışan örnekler içerir.

Ön koşullar

Başlamadan önce aşağıdaki gereksinimleri karşıladığınızdan emin olun:

  • IntelliJ IDEA Ultimate Edition veya Eclipse yüklü olmalıdır (aşağıdaki örneklerde IntelliJ IDEA kullanılmıştır)

  • JDK yüklü olmalıdır

  • demo projesi yerel makinenize indirilmiş ve arşivden çıkarılmış olmalıdır (çıkarılan klasörün adı rocketmq-demo-master şeklindedir)

  • ApsaraMQ for RocketMQ konsolu içinde oluşturulmuş aşağıdaki kaynaklara sahip bir ApsaraMQ for RocketMQ örneğiniz olmalıdır: örnek, konu, tüketici grubu, AccessKey ID ve AccessKey secret. Talimatlar için Kaynak oluşturma bölümüne bakın

Demo projesini yapılandırın

1. Adım: Projeyi içe aktarın

Demo proje dosyalarını IntelliJ IDEA'ya içe aktarın.

2. Adım: SDK sürümünü güncelleyin

pom.xml dosyasında Java için TCP istemci SDK'sı bağımlılığını en son sürüme güncelleyin. Kullanılabilir sürümler için Sürüm notları bölümüne bakı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>

3. Adım: MqConfig sınıfını yapılandırın

Oluşturduğunuz kaynaklarla eşleşmesi için MqConfig sınıfındaki aşağıdaki alanları ayarlayın:

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>";

Yer tutucuları gerçek değerlerinizle değiştirin:

Yer Tutucu Açıklama Nerede Bulunur
<your-topic> Normal ve işlem bazlı mesajlar için konu ApsaraMQ for RocketMQ console > örneğiniz > Konular
<your-group-id> Tüketici grubu kimliği ApsaraMQ for RocketMQ console > örneğiniz > Gruplar
<your-order-topic> Sıralı mesajlar için konu Yukarıdakiyle aynı (sıralı mesajlar için ayrı bir konu oluşturun)
<your-order-group-id> Sıralı mesajlar için tüketici grubu Yukarıdakiyle aynı
<your-access-key> Alibaba Cloud hesabınızın AccessKey ID'si AccessKey çifti oluşturma bölümüne bakın
<your-secret-key> Alibaba Cloud hesabınızın AccessKey secret değeri Yukarıdakiyle aynı
<your-message-tag> Filtreleme için özel mesaj etiketi Herhangi bir dize değeri
<your-tcp-endpoint> Örneğinizin TCP uç noktası ApsaraMQ for RocketMQ console > örneğiniz > Instance Details sayfası > TCP Endpoint bölümü
Konu üzerinde izinleri olan bir RAM kullanıcısının AccessKey çiftini de kullanabilirsiniz. Kullanılabilir yapılandırma parametreleri hakkında daha fazla bilgi için Yöntemler ve parametreler bölümüne bakın.

4. Adım: common.xml dosyasını yapılandırın (yalnızca Spring ve Spring Boot)

Spring veya Spring Boot örneklerini kullanmayı planlıyorsanız common.xml dosyasını kaynak bilgilerinizle güncelleyin:

<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>

Mesaj gönderin ve alın

Önemli

Demo projesi üreticileri ve tüketicileri tek bir iş parçacığında çalıştırır. Üretim sistemlerinde üreticileri ve tüketicileri ayrı iş parçacıklarında veya sunucularda çalıştırın. Çok iş parçacıklı örnekler için Birden çok iş parçacığı kullanarak mesaj gönderme bölümüne bakın.

İlgili sınıfın main yöntemini çağırarak her bir örneği çalıştırın.

Mesaj gönderin

Mesaj türünüz ve çerçevenizle eşleşen üretici sınıfını çalıştırın:

**Mesaj Türü** **Java** **Spring** **Spring Boot**
Normal SimpleMQProducer ProducerClient ProducerClient
İşlem Bazlı SimpleTransactionProducer TransactionProducerClient TransactionProducerClient
Sıralı (FIFO) SimpleOrderProducer OrderProducerClient OrderProducerClient
Zamanlanmış ve Gecikmeli MQTimerProducer Desteklenmiyor Desteklenmiyor

Mesaj türlerine göre ayrıntılar:

  • İşlem bazlı mesajlar: LocalTransactionCheckerImpl sınıfı yerel işlem durumu denetimlerini yönetir. Tam iş akışı için İşlem bazlı mesajları gönderme ve alma bölümüne bakın.

  • Sıralı mesajlar: Mesajlar ilk giren ilk çıkar (FIFO) düzeninde gönderilir ve tüketilir. Ayrıntılar için Sıralı mesajları gönderme ve abone olma bölümüne bakın.

  • Zamanlanmış ve gecikmeli mesajlar: MQTimerProducer sınıfı varsayılan olarak mesajları 3 saniyelik bir gecikmeyle teslim eder. Yapılandırılabilecek maksimum gecikme süresi 40 gündür. Ayrıntılar için Zamanlanmış mesajları gönderme ve alma bölümüne bakın.

Mesajların gönderildiğini doğrulayın

Mesajları gönderdikten sonra ApsaraMQ for RocketMQ konsolu'na gidin ve konuya göre mesajları sorgulayın. Gönderdiğiniz mesajlar sonuçlarda görünmelidir.

Mesajları alın

Mesaj türünüz ve çerçevenizle eşleşen tüketici sınıfını çalıştırın:

**Mesaj Türü** **Java** **Spring** **Spring Boot**
Normal SimpleMQConsumer ConsumerClient ConsumerClient
İşlem Bazlı SimpleMQConsumer ConsumerClient ConsumerClient
Sıralı (FIFO) SimpleOrderConsumer OrderConsumerClient OrderConsumerClient
Zamanlanmış ve Gecikmeli SimpleMQConsumer Desteklenmiyor Desteklenmiyor
Sınıf başlatma işlemi başlangıçta birkaç saniye sürer. Bu beklenen bir durumdur ve yalnızca bir kez gerçekleşir; üretim ortamında sınıflar yalnızca uygulama başlatma sırasında yüklenir.

Mesajların alındığını doğrulayın

Bir günlük girişi, tüketicinin mesajı aldığını onaylar. Daha fazla doğrulama yapmak için tüketicilerin durumunu görüntüleyin. ApsaraMQ for RocketMQ konsolu içinde başlattığınız tüketiciler çevrimiçi ve konuya abone olmuş olarak görünmelidir.

Sonraki adımlar