全部产品
Search
文档中心

Serverless App Engine:Migrasikan aplikasi Dubbo ke SAE dengan lancar

更新时间:Jul 06, 2025

Jika aplikasi Dubbo Anda diterapkan di Alibaba Cloud, Anda dapat memigrasikannya ke Serverless App Engine (SAE). Topik ini menjelaskan cara memigrasikan aplikasi secara mulus ke SAE.

Langkah 1: Migrasikan aplikasi pertama

Berikut adalah contoh cara memigrasikan aplikasi demo ke SAE. Untuk informasi tentang URL unduhan aplikasi demo, lihat Demo.

  1. Tetapkan prioritas aplikasi yang ingin dimigrasikan ke SAE.

    Pilih aplikasi dengan prioritas tinggi untuk migrasi. Kami menyarankan Anda memulai dari penyedia dasar. Jika jejaknya kompleks dan sulit dianalisis, Anda dapat memilih aplikasi secara acak.

  2. Tambahkan dependensi ke aplikasi dan modifikasi konfigurasi aplikasi.

    Catatan

    Dalam contoh ini, solusi migrasi dual-registration dan dual-subscription digunakan untuk memigrasikan aplikasi.

    1. Tambahkan dependensi edas-dubbo-migration-bom ke file pom.xml.

      <dependency>
          <groupId>com.alibaba.edas</groupId>
          <artifactId>edas-dubbo-migration-bom</artifactId>
          <version>2.6.5.1</version>
          <type>pom</type>
      </dependency>                            
    2. Tambahkan alamat IP registri SAE ke application.properties.

      dubbo.registry.address = edas-migration://192.168.XX.XX:9999?service-registry=edas://127.0.XX.XX:8080,zookeeper://192.168.XX.XX:2181&reference-registry=zookeeper://192.168.XX.XX:2181&config-address=127.0.XX.XX:8848      
      Penting

      Jika aplikasi bukan aplikasi Spring Boot, tentukan alamat registri di dubbo.properties atau file konfigurasi Spring.

      Parameter

      Deskripsi

      edas-migration://192.168.XX.XX:9999

      Header alamat registri. Jika aplikasi terdaftar dengan beberapa layanan registri, Anda tidak perlu mengubah header. Jika level log WARN atau lebih rendah, log WARN mungkin dilemparkan saat startup karena Dubbo memverifikasi alamat IP dan port. Log ini bisa diabaikan.

      service-registry

      Alamat registri untuk pendaftaran layanan. Anda dapat menentukan beberapa alamat registri. Setiap alamat registri dalam format standar alamat registri Dubbo. Pisahkan beberapa alamat registri dengan koma (,). Dalam contoh ini, 192.168.XX.XX menunjukkan alamat ZooKeeper. Tentukan alamat IP dan port berdasarkan skenario bisnis Anda.

      reference-registry

      Alamat registri untuk langganan layanan. Anda dapat menentukan beberapa alamat registri. Anda juga dapat menentukan alamat registri asli sebelum migrasi.

      config-address

      Alamat yang didorong secara dinamis.

    3. Selesaikan modifikasi lainnya.

      Jika aplikasi bukan aplikasi Spring atau Spring Boot, tambahkan com.alibaba.edas.dubbo.migration.controller.EdasDubboRegistryRest ke jalur pemindaian.

  3. Verifikasi hasil di lingkungan lokal Anda.

    Dalam contoh ini, konfigurasi dinamis digunakan.

    1. Selesaikan persiapan sebelum verifikasi. Sebelum memverifikasi hasil, lakukan operasi berikut:

    2. Periksa apakah layanan telah terdaftar.

      • Masuk ke pusat konfigurasi ringan untuk melihat layanan dalam daftar penyedia layanan.

      • Masuk ke ZooKeeper untuk melihat informasi tentang pendaftaran dan konsumsi layanan.

    3. (Opsional) Masuk ke Nacos untuk mengonfigurasi informasi pendaftaran layanan.

      Catatan

      Lewati langkah ini jika konfigurasi dinamis tidak diperlukan.

      Parameter

      Deskripsi

      DataId

      Setel parameter ini ke dubbo.registry.config.

      Group

      Setel parameter ini ke nama aplikasi Dubbo yang ditentukan oleh parameter applicationName. Contoh: dubbo-migration-demo-server. Nama aplikasi harus unik karena informasi pendaftaran layanan dikonfigurasi pada tingkat aplikasi.

      Konten Konfigurasi

      • Tingkat aplikasi

        dubbo.reference.registry=edas://127.0.XX.XX:8080   # Alamat registri untuk pendaftaran layanan.
        dubbo.service.registry=edas://127.0.XX.XX:8080,zookeeper:127.0.XX.XX:2181   # Alamat registri untuk langganan layanan.

      • Tingkat alamat IP instance

        192.168.XX.XX.dubbo.reference.registry=edas://127.0.XX.XX:8080,zookeeper:127.0.XX.XX:2181
        192.168.XX.XX.dubbo.service.registry=edas://127.0.XX.XX:8080

      Saat memvalidasi kluster, kami sarankan Anda pertama-tama memeriksa apakah konfigurasi pada tingkat alamat IP instance berlaku. Kemudian, periksa konfigurasi pada tingkat aplikasi.

    4. Periksa apakah panggilan aplikasi normal setelah migrasi dan periksa hubungan pendaftaran serta langganan registri layanan.

      • Spring Boot 1.x: http://ip:port/dubboRegistry

      • Spring Boot 2.x: http://ip:port/actuator/dubboRegistry

      Dubbo应用迁移1

  4. Terapkan aplikasi di SAE.

    Terapkan aplikasi di SAE sesuai skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Penyebaran Aplikasi.

  5. Verifikasi hasil.

    1. Periksa apakah bisnis Anda berjalan sesuai harapan.

    2. Lihat data pemantauan langganan layanan.

      Jika Spring Boot Actuator diaktifkan untuk aplikasi, Anda dapat mengakses Actuator untuk melihat informasi tentang RibbonServerList setiap layanan yang dilanggan oleh aplikasi. Anda dapat mengakses Actuator menggunakan URL berikut:

      • Spring Boot 1.x: http://ip:port/dubboRegistry

      • Spring Boot 2.x: http://ip:port/actuator/dubboRegistry

      Dubbo应用迁移2

      Deskripsi parameter:

      • dubbo.orig.**: Informasi registri layanan yang dikonfigurasi dalam aplikasi.

      • dubbo.effective.**: Informasi registri layanan yang berlaku dalam aplikasi.

Langkah 2: Migrasikan aplikasi lainnya

Migrasikan semua aplikasi ke SAE secara berurutan. Untuk informasi lebih lanjut, lihat Langkah 1: Migrasikan Aplikasi Pertama.

Langkah 3: Hapus konfigurasi migrasi

Setelah migrasi, hapus konfigurasi registri layanan asli dan dependensi edas-dubbo-migration-bom yang digunakan selama migrasi.

Ubah alamat registri dengan menghapus konfigurasi ZooKeeper. Ini memastikan bahwa konsumen hanya berlangganan alamat registri dari SAE dan penyedia hanya menawarkan langganan di SAE. Anda dapat mengubah alamat registri menggunakan metode berikut:

  • Metode 1: Konfigurasi dinamis. Untuk informasi lebih lanjut, lihat Verifikasi Hasil di Lingkungan Lokal Anda.

  • Metode 2: Modifikasi manual.

    Ubah alamat registri menjadi alamat SAE Config Server setelah semua aplikasi dimodifikasi.

    dubbo.registry.address = edas-migration://192.168.XX.XX:9999?service-registry=edas://127.0.XX.XX:8080,zookeeper://192.168.XX.XX:2181&reference-registry=edas://127.0.XX.XX:8080&config-address=127.0.XX.XX:8848

    Ubah nilai reference-registry dari zookeeper://192.168.XX.XX:2181 menjadi edas://127.0.XX.XX:8080. Lalu, terapkan aplikasi.

    Catatan

    Hapus zookeeper://192.168.XX.XX:2181 dari konfigurasi registri layanan jika ZooKeeper tidak lagi diperlukan setelah migrasi.

    Dari jangka panjang, ZooKeeper tidak berpengaruh pada stabilitas layanan tetapi meningkatkan kompleksitas dan tingkat kesalahan penggunaan registri layanan di Dubbo. Kami sarankan Anda membersihkan konfigurasi ZooKeeper setelah migrasi dan me-restart aplikasi secara bertahap selama jam-jam sepi. Kode sampel berikut menunjukkan alamat registri akhir.

    dubbo.registry.address = edas://127.0.XX.XX:8080