EdgeRoutine adalah lingkungan runtime serverless yang memungkinkan Anda menulis kode JavaScript dan menerapkan serta menjalankannya di titik kehadiran (POPs) Alibaba Cloud di seluruh dunia. EdgeRoutine mendukung sintaksis ES6 dan API Web Service Worker standar. Dengan EdgeRoutine, permintaan pengguna dapat direspons dan diproses oleh POP terdekat dengan pengguna, secara signifikan mengurangi latensi, mempercepat respons, dan meningkatkan pengalaman pengguna.
DCDN akan menghentikan EdgeRoutine untuk pengguna baru mulai 8 Mei 2025, pukul 00:00 hingga 13 Mei 2025, pukul 23:00 (UTC+8). Pengguna saat ini tidak akan terpengaruh.
Kami sarankan Anda memutakhirkan ke ESA untuk menggunakan Edge Routine.
Manfaat
Global deployment, near-site scheduling, and ultra-low latency: Dibandingkan dengan layanan komputasi awan umum seperti Function Compute dan Elastic Compute Service (ECS), EdgeRoutine tidak perlu diterapkan di wilayah tertentu. EdgeRoutine berjalan di POP di seluruh dunia, dan permintaan klien secara otomatis diarahkan ke POP terdekat, yang segera menjalankan kode Anda dan memproses permintaan klien. Ini secara signifikan mengurangi waktu respons server, membantu Anda memberikan layanan berlatensi rendah kepada pengguna.
Automatic scale-out and pay-as-you-go billing: Alibaba Cloud telah membangun jaringan tepi yang terdiri dari lebih dari 3.200 POP di seluruh dunia. POP ini menyediakan skalabilitas luar biasa. Jika jumlah permintaan klien di suatu wilayah melonjak, permintaan tersebut secara otomatis diarahkan ke POP terdekat yang memiliki sumber daya komputasi yang cukup. Anda dikenakan biaya untuk EdgeRoutine berdasarkan jumlah panggilan yang dibuat ke layanan.
Easy-to-use serverless environment: EdgeRoutine memungkinkan Anda fokus pada logika bisnis tanpa harus mengelola sumber daya dasar seperti CPU, memori, jaringan, dan sistem operasi. Anda dapat mengunggah kode menggunakan konsol atau API untuk menerapkan aplikasi. Pengembangan serverless dapat secara efektif memotong biaya pengembangan dan operasional Anda.
Prinsip
Skenario di mana EdgeRoutine tidak digunakan: 1. Klien mengirimkan permintaan ke gateway POP. → 2. POP mencari konten yang diminta di cache. Jika permintaan merupakan cache hit, konten yang diminta dikembalikan ke klien. → 3. Jika permintaan merupakan cache miss, permintaan dialihkan ke server asal.
Skema di mana EdgeRoutine digunakan: 1. Klien mengirimkan permintaan ke gateway POP. → 4. Permintaan dikelola oleh EdgeRoutine, dan kode JavaScript yang relevan dipicu. → Permintaan fetch dikirim ke cache dan server asal (No. 5 atau No. 3), atau ke layanan lain yang dapat diakses publik (No. 6).
CatatanPada gambar sebelumnya, EdgeRoutine dijalankan di belakang gateway. Dalam hal ini, konfigurasi nama domain yang dipercepat oleh DCDN yang dikonfigurasi di konsol, seperti konfigurasi HTTPS, kontrol akses, optimasi kinerja, dan pengaturan cache, tetap berlaku.
Konsep Dasar
Routine: EdgeRoutine adalah lingkungan runtime kode JavaScript yang berjalan di POP Alibaba Cloud. Anda dapat mengunggah dan menjalankan kode JavaScript di EdgeRoutine. Anda perlu membuat rutin sebelum dapat menggunakan EdgeRoutine. Rutin terdiri dari konfigurasi dan skrip kode JavaScript yang Anda unggah. Konfigurasi menentukan informasi tentang rutin, seperti nama, deskripsi, batasan CPU dan memori, serta daftar putih nama domain.
Version: Rutin mendukung manajemen versi. Selama pengembangan rutin, kode JavaScript terus dimodifikasi dan diperbarui. Setelah Anda menyelesaikan pengujian untuk tahap tertentu, Anda dapat membuat versi kode dengan mengambil snapshot dari status kode saat ini. Saat Anda menerbitkan rutin, Anda perlu memilih versi kode. Sistem memungkinkan Anda memilih versi sebelumnya dan mengelola kode historis. Setiap versi memiliki nomor versi, yang dihasilkan secara otomatis oleh sistem.
Environment: EdgeRoutine menyediakan lingkungan staging, lingkungan produksi, dan lingkungan canary.
Lingkungan staging: Lingkungan staging adalah POP independen yang digunakan untuk menguji kode. Lingkungan staging mensimulasikan lingkungan produksi tetapi terisolasi dari lingkungan produksi. Anda dapat memodifikasi konfigurasi rutin atau kode di lingkungan staging tanpa memengaruhi lingkungan produksi. Anda hanya dapat mengakses lingkungan staging setelah menambahkan alamat IP yang disediakan di halaman ke file hosts Anda.
Lingkungan produksi: Lingkungan produksi, juga dikenal sebagai lingkungan penyebaran, terdiri dari sejumlah besar POP yang tersebar di seluruh dunia. Setelah Anda menguji kode Anda di lingkungan staging, Anda dapat menerapkan kode ke lingkungan produksi. Gambar sebelumnya disediakan hanya untuk referensi. EdgeRoutine secara otomatis menambahkan atau menghapus POP berdasarkan volume permintaan Anda. Distribusi POP mungkin bervariasi sesuai dengan skenario aktual.
Lingkungan canary: Lingkungan ini memungkinkan Anda secara bertahap memperluas cakupan penyebaran Anda. Berisiko jika langsung menerapkan perubahan kode atau konfigurasi ke lingkungan produksi. Jika ada kesalahan dalam kode atau konfigurasi Anda, pengguna Anda mungkin terpengaruh. Jika bisnis Anda berskala besar atau Anda ingin mengendalikan risiko saat melakukan perubahan kode atau konfigurasi, kami sarankan Anda menggunakan lingkungan canary untuk mengelola cakupan penyebaran. Lingkungan canary kompleks. Kami sarankan Anda memahami dasar-dasar lingkungan sebelum menggunakan lingkungan canary. Untuk informasi lebih lanjut, lihat Lingkungan Canary (opsional).
Domain name: Setelah Anda membuat rutin dan menerapkan kode, Anda perlu menggunakan nama domain sebagai portal rutin yang dapat diakses klien. EdgeRoutine hanya mendukung nama domain yang dipercepat oleh DCDN- sebagai portal. Anda dapat mengaitkan EdgeRoutine dengan nama domain di konsol DCDN.
POP: POP digunakan oleh DCDN untuk distribusi konten. Permintaan klien dijadwalkan ke POP terdekat.
Batasan
Fitur | Item | Deskripsi |
Waktu CPU | 5 ms, 50 ms, dan 100 ms | Slot waktu CPU yang dialokasikan oleh EdgeRoutine untuk satu eksekusi. Waktu tunggu I/O tidak termasuk dalam perhitungan waktu CPU. Anda dapat memilih salah satu dari tiga opsi: 5 ms, 50 ms, dan 100 ms. Untuk informasi lebih lanjut, lihat Aturan penagihan. |
Kapasitas memori | 128 MB | Memori yang dialokasikan untuk nama domain pada mesin fisik. Semua permintaan untuk nama domain berbagi memori. Sebagai contoh, memori maksimum sandbox JavaScript pada mesin fisik adalah 128 MB. |
Waktu nyata | 120s | Waktu respons eksekusi untuk EdgeRoutine tidak boleh melebihi 120 detik. Waktu tunggu I/O termasuk dalam perhitungan waktu nyata. |
Waktu tunggu | 10s | Waktu selama gateway menunggu EdgeRoutine. Jika EdgeRoutine tidak mengembalikan data dalam 10 detik, gateway memutuskan koneksi dari server dan mengembalikan kode status HTTP 504 ke klien. |
Ukuran paket kode | 4 MB | Ukuran maksimum file kode JavaScript untuk setiap rutin. |
Jumlah subpermintaan | 4 | Jumlah permintaan fetch yang diizinkan oleh EdgeRoutine dalam satu eksekusi. |
Bahasa pemrograman | JavaScript (sintaksis ES6) | Hanya mendukung JavaScript. Anda perlu mengetahui cara menggunakan JavaScript. |
Jumlah rutin | 50 | Anda dapat membuat hingga 50 rutin untuk setiap akun Alibaba Cloud. |
Jumlah versi | 10 | Anda dapat menyimpan hingga 10 versi untuk setiap rutin. |
Protokol yang didukung | Hanya HTTPS | WebSocket, TCP, dan UDP tidak didukung. |
Subpermintaan | Tidak ada | Anda tidak dapat memulai permintaan fetch dalam rutin ke nama domain rutin lain. |