Tüm Ürünler
Search
Belge Merkezi

Function Compute:Kendi Yönetiminizdeki Apache RocketMQ Tetikleyicileri

Son Güncelleme:Oct 08, 2026

Kendi yönetiminizdeki bir Apache RocketMQ kümesini EventBridge aracılığıyla Function Compute'a bağlayarak mesajları özel işlev kodunuzla işleyin. RocketMQ konunuzda mesajlar alındığında, tetikleyici toplu iş yapılandırmanıza bağlı olarak her çalıştırmada bir veya daha fazla mesajı işlevinize geçirerek otomatik olarak çağrıda bulunur.

Nasıl Çalışır?

Function Compute'da bir tetikleyici oluşturduğunuzda, Function Compute yapılandırmanıza dayanarak EventBridge içinde karşılık gelen olay akışı oluşturur. Tetikleyici ayrıntılarını Function Compute konsolunda ve otomatik olarak oluşturulan kaynakları EventBridge konsolunda görüntüleyebilirsiniz.

Ön Koşullar

Başlamadan önce şunlara sahip olduğunuzdan emin olun:

Sınırlamalar

  • RocketMQ örneğine genel internet üzerinden veya bir Alibaba Cloud Sanal Özel Bulut (VPC) üzerinden erişilebilir olması gerekir.

  • Örneğe bir VPC üzerinden erişiliyorsa, VPC'nin işlevinizle aynı bölgede olması gerekir. Güvenlik grubunun RocketMQ NameServer bağlantı noktasında (varsayılan: 9876) gelen trafiğe izin verdiğinden emin olun.

  • RocketMQ tetikleyicilerinin sayısı, EventBridge olay akışı kotasıyla sınırlıdır. Ayrıntılar için bkz. Sınırlamalar.

Adım 1: Tetikleyici Oluşturma

  1. Function Compute konsoluna giriş yapın. Sol gezinme bölmesinde Functions öğesine tıklayın.

  2. Üst gezinme çubuğunda bir bölge seçin. Functions sayfasında yönetmek istediğiniz işleve tıklayın.

  3. İşlev ayrıntıları sayfasında Trigger sekmesine tıklayın, ardından Create Trigger düğmesine tıklayın.

  4. Create Trigger panelinde aşağıdaki tabloda açıklanan parametreleri yapılandırın ve OK düğmesine tıklayın.

Parametre Açıklama Zorunlu Varsayılan Örnek
Trigger type Self-built Apache RocketMQ seçeneğini belirleyin. Evet — Self-built Apache RocketMQ
Name Tetikleyici için bir ad girin. Evet — apache-rocketmq-trigger
Version or alias Tetikleyiciyle ilişkilendirilecek işlev sürümü veya takma adı. Belirli bir sürüm veya takma ad kullanmak için önce işlev ayrıntıları sayfasında ilgili sürüme veya takma ada geçiş yapın. Bkz. Sürümleri Yönetme ve Takma Adları Yönetme. Hayır LATEST LATEST
Endpoint RocketMQ kümenizin NameServer adresi. Evet — 192.168.X.X:9876
Topic Mesajların tüketileceği RocketMQ örneğindeki konu. Evet — testTopic
Group ID RocketMQ örneğindeki tüketici grubu kimliği. Evet — testGroup
Filter type Mesaj filtreleme yöntemi: Tag, etikete göre filtreler; SQL, mesaj özellikleri ve değerleriyle eşleşen bir SQL ifadesine göre filtreler. Evet — Tag
Filter Seçilen filtre türüne karşılık gelen filtre ifadesi. Evet — TagA
Authentication mode Kimlik doğrulama modu. Yalnızca ACL desteklenir. Evet — ACL
Username ACL kullanıcı adı. Authentication mode değeri ACL olduğunda gereklidir. Evet — admin
Password ACL parolası. Authentication mode değeri ACL olduğunda gereklidir. Evet —
Consumer offset Mesaj tüketiminin başlangıç noktası: Latest offset en son mesajdan başlar; Earliest offset en eski mesajdan başlar; Timestamp belirli bir zaman noktasından başlar. Evet — Latest offset
Networking RocketMQ kümenize bağlanmak için ağ türü: Internet, kümeye genel internet üzerinden erişir; VPC, kümeye bir VPC üzerinden erişir (VPC, vSwitch ve güvenlik grubunun seçilmesini gerektirir). Evet — Internet
Invocation method Tetikleyicinin işlevinizi nasıl çağırdığı: Sync invocation, işlevin tamamlanmasını bekler ve sonucu döndürür (bkz. Eşzamanlı Çağrılar); Async invocation, sonucu beklemeden hemen döner ve uzun süren işlevler için uygundur (bkz. Eşzamansız Çağrıya Genel Bakış). Hayır Sync invocation Sync invocation
Trigger state Tetikleyicinin oluşturulduktan hemen sonra etkinleştirilip etkinleştirilmeyeceği. Hayır Enabled Enabled

Gönderim yapılandırmaları, yeniden deneme ilkeleri ve dead-letter kuyrukları gibi gelişmiş ayarlar için bkz. Tetikleyicilerin Gelişmiş Özellikleri.

Tetikleyici oluşturulduktan sonra Triggers sekmesinde görünür. Tetikleyiciyi değiştirmek veya silmek için bkz. Tetikleyicileri Yönetme.

Adım 2: Test Olayını Yapılandırma

Tetikleyici, RocketMQ'dan gelen mesajları işlevinize olay nesnelerinden oluşan bir dizi olarak iletir. Manuel olarak bir test olayı yapılandırarak tetikleyici çağrısını simüle edin.

  1. İşlev ayrıntıları sayfasının Code sekmesinde, Test Function yanındaki image.png simgesine tıklayın ve Configure Test Parameters seçeneğini belirleyin.

  2. Configure Test Parameters panelinde Create new test event veya Modify existing test event seçeneğini belirleyin. Bir olay adı girin, aşağıdaki olay içeriğini yapıştırın ve OK düğmesine tıklayın.

[
  {
    "msgId": "7F0000010BDD2A84AEE70DA49B57****",
    "topic": "testTopic",
    "systemProperties": {
      "UNIQ_KEY": "7F0000010BDD2A84AEE70DA49B57****",
      "CLUSTER": "DefaultCluster",
      "MIN_OFFSET": "0",
      "TAGS": "TagA",
      "MAX_OFFSET": "128"
    },
    "userProperties": {},
    "body": "Hello RocketMQ"
  }
]

Dizideki her nesne bir RocketMQ mesajını temsil eder. Alanlar aşağıda açıklanmıştır.

Alan Tür Açıklama Örnek
msgId String Apache RocketMQ tarafından atanan mesaj kimliği. 7F0000010BDD2A84AEE70DA49B57****
topic String Konu adı. testTopic
systemProperties Map RocketMQ tarafından ayarlanan sistem düzeyi özellikler. —
systemProperties.UNIQ_KEY String Mesajın benzersiz anahtarı. 7F0000010BDD2A84AEE70DA49B57****
systemProperties.CLUSTER String RocketMQ kümesinin adı. DefaultCluster
systemProperties.MIN_OFFSET Integer Konu kuyruğundaki minimum ofset. 0
systemProperties.MAX_OFFSET Integer Konu kuyruğundaki maksimum ofset. 128
systemProperties.TAGS String Mesaja uygulanan filtre etiketi. TagA
userProperties Map Mesaj üreticisi tarafından ayarlanan özel özellikler. {}
body String Mesaj gövdesi. Hello RocketMQ

Adım 3: İşlev Kodunu Yazma ve Test Etme

Tetikleyici oluşturulduktan sonra gelen mesajları işlemek için işlev kodunuzu yazın. Üretim ortamında tetikleyici, RocketMQ yeni bir mesaj aldığında işlevi otomatik olarak çağırır.

  1. İşlev ayrıntıları sayfasının Code sekmesinde kodunuzu düzenleyiciye yazın ve Deploy düğmesine tıklayın. Aşağıdaki Node.js örneği olayı okur ve bir sonuç döndürür:

    'use strict';
    /*
    To enable the initializer feature,
    implement the initializer function as shown below:
    exports.initializer = (context, callback) => {
      console.log('initializing');
      callback(null, '');
    };
    */
    exports.handler = (event, context, callback) => {
      console.log("event: %s", event);
      // Parse the event and process each message.
      callback(null, 'return result');
    }
  2. Önceki adımda yapılandırdığınız test olayını çalıştırmak için Test Function düğmesine tıklayın.

Sonraki Adımlar

Function Compute konsoluna ek olarak tetikleyicileri şu araçlarla yapılandırıp yönetebilirsiniz:

Mevcut bir tetikleyiciyi değiştirmek veya silmek için bkz. Tetikleyicileri Yönetme.