Saat dideploy di wilayah publik, SchedulerX menerima koneksi dari mesin atau container apa pun yang memiliki akses jaringan publik, termasuk mesin non-Alibaba Cloud dan lingkungan pengembangan lokal. Topik ini menjelaskan cara menghubungkan ke SchedulerX dari lingkungan lokal untuk pengujian dan pengembangan.
Prasyarat
-
Catatan
Saat membuat aplikasi, pilih wilayah Internet.
Prosedur
-
Tambahkan dependensi SchedulerxWorker ke file pom.xml aplikasi Anda. Inisialisasi SchedulerxWorker berbeda tergantung jenis aplikasi:
Standard Java atau Spring
<dependency> <groupId>com.aliyun.schedulerx</groupId> <artifactId>schedulerx2-worker</artifactId> <version>${schedulerx2.version}</version> <!--Jika Anda menggunakan logback, exclude log4j dan log4j2. --> <exclusions> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency>Spring Boot
<dependency> <groupId>com.aliyun.schedulerx</groupId> <artifactId>schedulerx2-spring-boot-starter</artifactId> <version>${schedulerx2.version}</version> <!-- Jika Anda menggunakan logback, exclude log4j dan log4j2 --> <exclusions> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency> -
Peroleh konfigurasi akses untuk aplikasi Anda: wilayah Internet dan titik akhirnya (acm.aliyun.com).
-
Login ke Konsol MSE SchedulerX. Di bilah navigasi atas, alihkan wilayah ke Internet.
-
Di panel navigasi kiri, klik Application Management. Pada halaman Application Management, temukan aplikasi Anda lalu klik Access Configuration di kolom Actions untuk mendapatkan konfigurasi metode akses yang sesuai.
Pada dialog Access Configuration, daftar drop-down Access Method di sebelah kiri menyediakan opsi untuk Spring Boot, Java, Spring, Agent, k8s, dan Helm. Setelah memilih Spring Boot, panel kanan akan menampilkan parameter konfigurasi:
schedulerx2.endpoint=acm.aliyun.com,schedulerx2.namespace,schedulerx2.groupId, danschedulerx2.appKey(wajib untuk versi 1.2.1 dan yang lebih baru).Pilih metode akses untuk melihat konfigurasinya.
-
-
Inisialisasi SchedulerxWorker. Proses inisialisasi berbeda tergantung jenis aplikasi:
Standard Java
Inisialisasi SchedulerxWorker di fungsi utama.
public void initSchedulerxWorker() throws Exception { SchedulerxWorker schedulerxWorker = new SchedulerxWorker(); schedulerxWorker.setEndpoint("xxxx"); schedulerxWorker.setNamespace("xxxx"); schedulerxWorker.setGroupId("xxxx"); // Setel appKey untuk versi 1.2.1 dan yang lebih baru. schedulerxWorker.setAppKey("xxxx"); schedulerxWorker.init(); }Di panel Access Configuration, klik Copy untuk menyalin konfigurasi ke file konfigurasi yang sesuai. Atau, atur nilai
schedulerxWorker.setEndpoint,schedulerxWorker.setNamespace,schedulerxWorker.setGroupId, danschedulerxWorker.setAppKeysesuai dengan nilai yang Anda peroleh di Langkah 2.Catatan-
Jika sebuah aplikasi berisi beberapa layanan atau Anda perlu mengkategorikan tugas terjadwal, Anda dapat membuat beberapa kelompok. Misalnya, untuk aplikasi
animals, Anda dapat membuat dua kelompok baru:animals.dogsdananimals.cats. Anda tidak perlu menyediakan instans terpisah untuk menghubungkan kedua kelompok tersebut. Cukup cantumkan kedua kelompok tersebut setelahgroupId=di client aplikasi Anda, misalnyagroupId=animals.dogs,animals.cats. -
Untuk opsi konfigurasi tambahan saat menginisialisasi client SchedulerxWorker, lihat Parameter konfigurasi SchedulerxWorker.
Spring
Inject bean SchedulerxWorker di file konfigurasi XML.
<bean id="schedulerxWorker" class="com.alibaba.schedulerx.worker.SchedulerxWorker"> <property name="endpoint"> <value>${endpoint}</value> </property> <property name="namespace"> <value>${namespace}</value> </property> <property name="groupId"> <value>${groupId}</value> </property> <!-- Setel parameter appKey untuk versi 1.2.1 dan yang lebih baru. --> <property name="appKey"> <value>${appKey}</value> </property> </bean>Di panel Access Configuration, klik Copy untuk menyalin konfigurasi ke file konfigurasi yang sesuai. Atau, ganti
${endpoint},${namespace},${groupId}, dan${appKey}dengan nilai yang Anda peroleh di Langkah 2.Spring Boot
Di file application.properties, tambahkan konfigurasi berikut:
spring.schedulerx2.endpoint=${endpoint} spring.schedulerx2.namespace=${namespace} spring.schedulerx2.groupId=${groupId} # Setel appKey untuk versi 1.2.1 dan yang lebih baru. spring.schedulerx2.appKey=${appKey}Di panel Access Configuration, klik Copy untuk menyalin konfigurasi ke file konfigurasi yang sesuai. Atau, ganti
${endpoint},${namespace},${groupId}, dan${appKey}dengan nilai yang Anda peroleh di Langkah 2.CatatanJika sebuah aplikasi mencakup beberapa layanan bisnis atau Anda perlu mengkategorikan tugas terjadwal, Anda dapat membuat beberapa kelompok. Misalnya, untuk aplikasi bernama animals, Anda dapat membuat dua kelompok: animals.dogs dan animals.cats. Anda tidak perlu menjalankan instans terpisah untuk setiap kelompok. Sebagai gantinya, konfigurasikan kelompok-kelompok tersebut di client Anda dengan mencantumkannya dalam parameter groupId, misalnya,
groupId=animals.dogs,animals.cats. -
-
Buat kelas
JavaProcessordi aplikasi Anda untuk mengimplementasikan tugas terjadwal.Kode contoh berikut menunjukkan cara mengimplementasikan kelas
JavaProcessorsederhana yang secara berkala mencetakhello schedulerx2.0.package com.aliyun.schedulerx.test.job; import com.alibaba.schedulerx.worker.domain.JobContext; import com.alibaba.schedulerx.worker.processor.JavaProcessor; import com.alibaba.schedulerx.worker.processor.ProcessResult; @Component public class MyHelloJob extends JavaProcessor { @Override public ProcessResult process(JobContext context) throws Exception { System.out.println("hello schedulerx2.0"); return new ProcessResult(true); } } -
Jalankan aplikasi lokal.
Verifikasi hasil
Login ke Konsol MSE SchedulerX. Di bilah navigasi kiri, klik Application Management dan lihat jumlah Total Instances pada aplikasi target.

Jika Total Instances bernilai 0, artinya aplikasi gagal terhubung. Periksa dan perbaiki aplikasi lokal Anda.
Jika Total Instances tidak nol dan menampilkan jumlah instans yang terhubung, berarti aplikasi berhasil terhubung.