全部产品
Search
文档中心

Function Compute:Pemicu Apache RocketMQ yang dikelola sendiri

更新时间:Nov 11, 2025

Anda dapat menggunakan Apache RocketMQ sebagai sumber event dan mengintegrasikannya dengan Function Compute melalui EventBridge. Pemicu Apache RocketMQ tersebut kemudian dapat memanggil fungsi terkait sehingga Anda dapat memproses pesan yang dipublikasikan ke Apache RocketMQ dengan logika kustom. Topik ini menjelaskan cara membuat pemicu Apache RocketMQ, mengonfigurasi parameter input, serta menulis dan menguji kode di konsol Function Compute.

Informasi latar belakang

Saat Anda membuat pemicu di konsol Function Compute, Function Compute secara otomatis membuat sumber daya aliran acara di EventBridge berdasarkan konfigurasi pemicu.

Setelah pemicu dibuat, Anda dapat melihat informasinya di konsol Function Compute serta melihat sumber daya yang dibuat secara otomatis di konsol EventBridge. Ketika sebuah pesan dipublikasikan ke topik di Apache RocketMQ, fungsi tersebut dipicu. Berdasarkan konfigurasi batching, satu atau beberapa event pesan didorong ke fungsi secara batch.

Prasyarat

Batasan

  • Kluster Apache RocketMQ yang berfungsi sebagai sumber event harus dapat diakses melalui internet atau dari dalam virtual private cloud (VPC) Alibaba Cloud.

  • Jika kluster Apache RocketMQ dapat diakses dari dalam VPC, instans terhubung-VPC dan fungsi Function Compute harus berada di wilayah yang sama.

  • Anda tidak dapat membuat pemicu Apache RocketMQ jika jumlah aliran acara yang dibuat telah mencapai batas maksimum. Untuk informasi lebih lanjut tentang batasan jumlah aliran acara, lihat Batasan.

Langkah 1: Buat pemicu Apache RocketMQ

  1. Masuk ke Konsol Function Compute. Di panel navigasi sebelah kiri, pilih Function Management > Functions.

  2. Di bilah navigasi atas, pilih wilayah. Pada halaman Functions, klik fungsi yang dituju.

  3. Di halaman detail fungsi, klik tab Triggers, lalu klik Create Trigger.

  4. Di panel Buat Pemicu, konfigurasikan parameter, lalu klik OK.

    Parameter

    Prosedur

    Contoh

    Trigger Type

    Pilih Self-managed Apache RocketMQ.

    Self-managed Apache RocketMQ

    Name

    Masukkan nama kustom untuk pemicu.

    apache-rocketmq-trigger

    Version Or Alias

    Nilai default adalah LATEST. Untuk membuat pemicu untuk versi atau alias yang berbeda, alihkan ke versi atau alias tersebut di pojok kanan atas halaman detail fungsi. Untuk informasi selengkapnya tentang versi dan alias, lihat Kelola versi dan Kelola alias.

    LATEST

    Endpoint

    Masukkan alamat NameServer kluster.

    192.168.X.X:9876

    Topic

    Pilih topik dari instans Apache RocketMQ yang telah dibuat.

    testTopic

    Group ID

    Pilih ID kelompok konsumen dari instans Apache RocketMQ yang telah dibuat.

    testGroup

    FilterType

    Pilih jenis penyaringan pesan. Nilai yang valid:

    • Tag: Menyaring pesan berdasarkan tag.

    • SQL: Menyaring pesan berdasarkan pernyataan SQL. Anda dapat mencocokkan properti dan nilai properti pesan.

    Tag

    Filter

    Setelah memilih FilterType, konfigurasikan pernyataan filter yang sesuai.

    TagA

    Authentication Mode

    Pilih mode autentikasi. Mode ACL didukung.

    ACL

    Username

    Jika Anda mengatur Authentication Mode ke ACL, konfigurasikan nama pengguna Apache RocketMQ untuk verifikasi identitas.

    admin

    Password

    Jika Anda mengatur Authentication Mode ke ACL, konfigurasikan kata sandi Apache RocketMQ untuk verifikasi identitas.

    ******

    Consumer Offset

    Pilih offset konsumen. Ini menentukan posisi awal EventBridge menarik pesan. Nilai yang valid:

    • Latest Offset: Mengonsumsi pesan dari offset terbaru.

    • Earliest Offset: Mengonsumsi pesan dari offset paling awal.

    • Timestamp: Mengonsumsi pesan dari titik waktu tertentu.

    Latest Offset

    Network Configuration

    Pilih jenis jaringan untuk perutean pesan. Nilai yang valid:

    • Internet: Mengakses kluster Apache RocketMQ melalui Internet.

    • VPC: Mengakses kluster Apache RocketMQ melalui virtual private cloud Alibaba Cloud. Anda harus memilih VPC, VSwitch, dan Security Group yang sesuai.

    Internet

    Invocation Mode

    Pilih mode pemanggilan fungsi.

    Nilai yang valid:

    • Synchronous: Ini adalah mode pemanggilan default. Suatu event memicu fungsi. Function Compute menunggu hingga fungsi selesai, lalu mengembalikan hasilnya. Untuk informasi selengkapnya, lihat Pemanggilan sinkron.

    • Asynchronous: Mode ini cocok untuk fungsi dengan penundaan penjadwalan yang panjang. Setelah suatu event memicu fungsi, Function Compute langsung mengembalikan tanggapan dan memastikan fungsi dieksekusi setidaknya sekali. Namun, hasil eksekusi tidak dikembalikan. Untuk informasi selengkapnya, lihat Pemanggilan asinkron.

    Synchronous

    Trigger State

    Menentukan apakah pemicu diaktifkan segera setelah dibuat. Secara default, opsi ini dipilih, artinya pemicu diaktifkan segera setelah pembuatan.

    Aktifkan Pemicu

    Untuk informasi tentang konfigurasi lanjutan, seperti konfigurasi dorong, percobaan ulang, dan antrian pesan gagal, lihat Fitur lanjutan pemicu.

    Setelah pemicu dibuat, pemicu tersebut muncul di tab Triggers. Untuk memodifikasi atau menghapus pemicu, lihat Kelola pemicu.

Langkah 2: Konfigurasi parameter input fungsi

Sumber event Apache RocketMQ yang dikelola sendiri meneruskan event sebagai parameter input ke fungsi. Anda dapat secara manual meneruskan event ke fungsi untuk mensimulasikan peristiwa pemicu.

  1. Di tab Code halaman detail fungsi, klik ikon image.png di samping Test Function dan pilih Configure Test Parameters dari daftar drop-down.

  2. Di panel Configure Test Parameters, pilih Create New Test Event atau Edit Existing Test Event, masukkan nama event dan konten event, lalu klik OK.

    Format event adalah sebagai berikut.

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

    Tabel berikut menjelaskan parameter dalam event.

    Parameter

    Tipe

    Contoh

    Deskripsi

    msgId

    String

    7F0000010BDD2A84AEE70DA49B57****

    ID pesan Apache RocketMQ.

    topic

    String

    testTopic

    Nama topik.

    systemProperties

    Map

    Properti sistem.

    UNIQ_KEY

    String

    7F0000010BDD2A84AEE70DA49B57****

    Kunci unik pesan.

    CLUSTER

    String

    DefaultCluster

    Nama kluster Apache RocketMQ.

    MIN_OFFSET

    Int

    0

    Offset minimum.

    MAX_OFFSET

    Int

    128

    Offset maksimum.

    TAGS

    String

    TagA

    Properti filter.

    userProperties

    Map

    None

    Properti pengguna.

    body

    String

    Hello RocketMQ

    Konten pesan.

Langkah 3: Tulis dan uji kode fungsi

Setelah membuat pemicu, Anda dapat menulis dan menguji kode fungsi untuk memverifikasi kebenarannya. Di lingkungan produksi, pemicu secara otomatis memanggil fungsi setiap kali Apache RocketMQ menerima pesan.

  1. Di halaman detail fungsi, klik tab Code. Di editor kode, tulis kode Anda lalu klik Deploy Code.

    Topik ini menggunakan kode Node.js sebagai contoh. Kode contohnya adalah sebagai berikut.

    'use strict';
    /*
    Untuk mengaktifkan fitur initializer,
    implementasikan fungsi initializer sebagai berikut:
    exports.initializer = (context, callback) => {
      console.log('initializing');
      callback(null, '');
    };
    */
    exports.handler = (event, context, callback) => {
      console.log("event: %s", event);
      // Parsing parameter event dan proses event.
      callback(null, 'return result');
    }
  2. Klik Test Function.

Informasi lebih lanjut

Selain melalui konsol Function Compute, Anda juga dapat mengonfigurasi pemicu dengan cara berikut:

  • Gunakan alat Serverless Devs untuk mengonfigurasi pemicu. Untuk informasi selengkapnya, lihat Perintah umum Serverless Devs.

  • Gunakan SDK untuk mengonfigurasi pemicu. Untuk informasi selengkapnya, lihat SDK.

Untuk memodifikasi atau menghapus pemicu, lihat Kelola pemicu.