Tüm Ürünler
Search
Belge Merkezi

ApsaraMQ for RocketMQ:Mesaj sorgulama

Son Güncelleme:Oct 04, 2026

ApsaraMQ for RocketMQ mesajları sorgulamak için üç yöntem sunar: mesaj kimliğine göre, mesaj anahtarına göre ve konuya göre. Mesaj sorgulama özelliğini kullanarak bir mesajın başarıyla gönderildiğini doğrulayabilir, içeriğini kontrol edebilir ve mesaj izini görüntüleyebilirsiniz.

Sorgulama yöntemleri

Varsayılan olarak ApsaraMQ for RocketMQ mesajları üç gün boyunca saklar. Bu nedenle yalnızca son üç güne ait mesajları sorgulayabilirsiniz. Örneğin, geçerli saat 10 Haziran 2019 tarihinde 15:09:48 ise, bir konuda sorgulayabileceğiniz en eski mesaj 7 Haziran 2019 tarihinde 15:09:48'de gönderilmiş olandır.

Aşağıdaki tabloda üç sorgulama yöntemi açıklanmış ve karşılaştırılmıştır.

Sorgulama yöntemi

Sorgulama koşulu

Eşleşme türü

Açıklama

Mesaj kimliğine göre

topic + message ID

tam eşleşme

Özelliklerini almak üzere konu ve mesaj kimliği temelinde belirli bir mesajı bulur.

Mesaj anahtarına göre

topic + message key

bulanık eşleşme

Belirtilen konu ve mesaj anahtarıyla eşleşen en son 64 mesajı bulur.

Önemli

Üreticiler her mesaj için benzersiz bir anahtar atamalıdır. Aynı anahtara sahip 64'ten fazla mesaj varsa bazı mesajlar sorgu sonuçlarında döndürülmeyebilir.

Konuya göre

topic + time range

aralık eşleşmesi

Belirtilen zaman aralığında bir konudaki tüm mesajları alır. Bu yöntem büyük miktarda mesaj döndürebileceğinden belirli bir mesajı bulmak zorlaşabilir.

Önerilen sorgulama süreci

Mesajları sorgularken aşağıdaki süreci izlemenizi öneririz.

消息查询

Yordam

  1. ApsaraMQ for RocketMQ konsolu oturumunu açın. Sol gezinme bölmesinde Instances seçeneğine tıklayın.

  2. Üst gezinme çubuğunda China (Hangzhou) gibi bir bölge seçin.

  3. Instances sayfasında hedef örneği bulun. Actions sütununda More seçeneğine tıklayın ve ardından açılan listeden Message Query öğesini seçin.

  4. Message Query sayfasında bir sorgulama yöntemi seçin, gerekli bilgileri girin ve Search seçeneğine tıklayın.

    • Query by Message ID

      Belirli bir mesaj için tam eşleşme sorgusu yapmak amacıyla konusunu ve mesaj kimliğini girin. Başarılı bir gönderimden sonra mesaj kimliğini günlük kaydı olarak tutmak sorun gidermeyi kolaylaştırır.

      Aşağıdaki kod, Java SDK kullanılarak mesaj kimliğinin nasıl alınacağını gösterir.

         SendResult sendResult = producer.send(msg);
         String msgId = sendResult.getMessageId();

      Diğer diller için bkz. SDK başvurusuna genel bakış.

    • Query by Message Key

      ApsaraMQ for RocketMQ ayarladığınız mesaj anahtarı temelinde mesajlar için bir dizin oluşturur. Anahtarı kullanarak bir mesaj aradığınızda ApsaraMQ for RocketMQ eşleşen mesajları bulmak ve döndürmek için bu dizini kullanır.

      Önemli
      • Bu sorgulama yöntemini kullanmak için mesajı gönderirken mesaj anahtarını ayarlamanız gerekir.

      • Mesaj anahtarına göre yapılan bir sorgu yalnızca en son 64 eşleşen mesajı döndürür. Benzersiz ve iş açısından ayırt edilebilir anahtarlar kullanın.

      Aşağıdaki kod bir mesaj anahtarının nasıl ayarlanacağını gösterir.

              Message msg = new Message("Topic","*","Hello MQ".getBytes());
              /**
               * Set a unique business key for message retrieval. A globally unique key is recommended.
               * This allows you to query the message in the ApsaraMQ for RocketMQ console if you fail to receive it. 
               * If you do not set a key, message sending and receiving are not affected, but key-based queries will not work.
               */
            msg.setKey("TestKey"+System.currentTimeMillis());                                
    • Query by Topic

      Mesaj kimliğini veya mesaj anahtarını bilmediğiniz durumlarda bu yöntemi kullanın. O dönemde gönderilen tüm mesajları almak için bir konu ve zaman aralığı belirtin.

      Önemli

      Mesajları konuya göre sorgularken:

      • Bu aralık eşleşmesi çok sayıda mesaj döndürebilir. Sonuçları sınırlamak için zaman aralığını mümkün olduğunca daraltın.

      • Sorgu büyük miktarda mesaj döndürebileceğinden sonuçlar sayfalandırılır.

Sorgu sonuçları

Sorgulanan mesajları konsoldaki Message Query sayfasında görüntüleyebilirsiniz. Sonuçlar arasında mesaj kimliği, etiket, anahtar, üretim zamanı ve depolama zamanı yer alır. Ayrıca mesaj izlerini sorgulayabilir, tüketim doğrulaması yapabilir veya mesajları indirebilirsiniz.

Tüketim doğrulaması

ApsaraMQ for RocketMQ bir tüketim doğrulama özelliği sunar. Bu özellik, tüketim mantığını test etmek ve sonuçları doğrulamak amacıyla belirli bir mesajı çevrimiçi bir istemciye göndermenize olanak tanır.

Önemli

Tüketim doğrulaması yalnızca istemci mantığı için bir test aracıdır. Normal mesaj teslimatını etkilemez veya mesajın tüketim durumunu değiştirmez.

Tüketim doğrulama iletişim kutusunda bir group ID ve bir client ID seçin ve ardından OK seçeneğine tıklayın. Tüketim doğrulaması mesajın yeniden iletilmesine neden olabilir.

Başvurular

Sorgu sonuçlarından mesajın tüketim durumunu ve sonucunu kontrol etmek üzere mesaj izini görüntüleyebilirsiniz. Daha fazla bilgi için bkz. mesaj izlerini sorgulama.