Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan cara menyebarkan WebJobs dengan menggunakan portal Microsoft Azure untuk mengunggah executable atau skrip. WebJobs adalah fitur Azure App Service yang memungkinkan Anda menjalankan program atau skrip dalam instans yang sama dengan aplikasi web. Semua paket layanan aplikasi mendukung WebJobs. Tidak ada biaya tambahan untuk menggunakan WebJobs.
Gambaran Umum
WebJobs adalah fitur Azure App Service yang memungkinkan Anda menjalankan program atau skrip dalam instans yang sama dengan aplikasi web. Semua paket layanan aplikasi mendukung WebJobs. Tidak ada biaya tambahan untuk menggunakan WebJobs.
Jika Anda menggunakan Visual Studio alih-alih Azure App Service untuk mengembangkan dan menyebarkan WebJobs, lihat Mengembangkan dan menyebarkan WebJobs menggunakan Visual Studio.
Azure Functions menyediakan cara lain untuk menjalankan program dan skrip. Untuk perbandingan antara WebJobs dan Functions, lihat Memilih layanan integrasi dan otomatisasi yang tepat di Azure.
Jenis WebJob
Jenis file yang didukung untuk skrip atau program
Penting
WebJobs tidak didukung dalam kontainer Linux kustom berdasarkan Alpine Linux, termasuk aplikasi Linux menggunakan tumpukan runtime Java 8 dan Java 11. Dimulai dengan aplikasi Linux Java 17, Azure App Service menggunakan gambar berbasis non-Alpine, yang kompatibel dengan WebJobs.
Jenis file berikut ini didukung:
- Menggunakan cmd Windows: .cmd, .bat, .exe
- Menggunakan PowerShell: .ps1
- Menggunakan Bash: .sh
- Menggunakan Node.js: .js
- Menggunakan Java: .jar
Runtime yang diperlukan untuk menjalankan jenis file ini sudah diinstal pada instans aplikasi web.
WebJobs berkelanjutan vs. yang dipicu
Tabel berikut ini menjelaskan perbedaan antara WebJobs berkelanjutan dan terpicu :
| Berkelanjutan | Tersulut |
|---|---|
| Langsung dimulai ketika WebJob dibuat. Untuk menjaga pekerjaan agar tidak berakhir, program atau skrip biasanya melakukan pekerjaannya di dalam perulangan tanpa akhir. Jika pekerjaan berakhir, Anda dapat memulainya ulang. Biasanya digunakan dengan WebJobs SDK. | Dimulai hanya jika dipicu secara manual atau sesuai jadwal. |
| Berjalan pada semua instans tempat aplikasi web dijalankan. Anda dapat secara opsional membatasi WebJob ke satu instans. | Berjalan pada satu instans yang dipilih Azure untuk penyeimbangan beban. |
| Mendukung penelusuran kesalahan jarak jauh. | Tidak mendukung debugging jarak jauh. |
Kode disebarkan di bawah \site\wwwroot\app_data\Jobs\Continuous. |
Kode disebarkan di bawah \site\wwwroot\app_data\Jobs\Triggered. |
Catatan
Sebuah aplikasi web dapat kedaluwarsa setelah 20 menit tidak aktif, dan hanya permintaan ke aplikasi web yang sebenarnya yang dapat mereset timer. Menampilkan konfigurasi aplikasi di portal Microsoft Azure atau membuat permintaan ke situs alat tingkat lanjut tidak mengatur ulang timer. Jika Anda mengatur aplikasi web yang menghosting pekerjaan Anda untuk berjalan terus menerus, berjalan sesuai jadwal, atau menggunakan pemicu berbasis peristiwa, aktifkan pengaturan Always on di panel Konfigurasi Azure aplikasi web Anda. Pengaturan Always on membantu memastikan bahwa jenis WebJobs ini berjalan dengan andal. Fitur ini hanya tersedia di tingkat harga Dasar, Standar, dan Premium.
Membuat sebuah WebJob berkelanjutan
Penting
Saat Anda memiliki kontrol sumber yang dikonfigurasi dengan aplikasi Anda, Webjobs harus disebarkan sebagai bagian dari integrasi kontrol sumber. Setelah kontrol sumber dikonfigurasi dengan aplikasi Anda, sebuah WebJob tidak dapat ditambahkan dari portal Microsoft Azure.
Di portal Azure, buka halaman App Service aplikasi web App Service, aplikasi API, atau aplikasi seluler Anda.
Di bawah Pengaturan di panel kiri, pilih WebJobs, lalu pilih Tambahkan.
Isi pengaturan Tambahkan WebJob seperti yang ditentukan dalam tabel, lalu pilih Buat Webjob.
Pengaturan Contoh nilai Deskripsi Nama Pekerjaan Web Berkelanjutan Saya Nama WebJob yang unik. Harus dimulai dengan huruf atau angka dan tidak boleh berisi karakter khusus selain "-"dan"_".Unggahan File ConsoleApp.zip File .zip yang berisi file executable atau skrip Anda dan file pendukung apa pun yang diperlukan untuk menjalankan program atau skrip. Jenis file skrip atau eksekusi yang didukung tercantum di bagian Jenis file yang didukung. Jenis Berkelanjutan Jenis WebJobs dijelaskan sebelumnya di artikel ini. Timbangan Beberapa Instansi Hanya tersedia untuk WebJobs Berkelanjutan. Menentukan apakah program atau skrip berjalan pada semua instans atau satu instans. Opsi untuk digunakan di beberapa instans tidak berlaku untuk tingkat harga Gratis atau Berbagi. WebJob yang baru muncul di halaman WebJobs. Jika Anda melihat pesan yang mengatakan bahwa WebJob ditambahkan, tetapi Anda tidak dapat menemukannya, pilih Refresh.
Untuk menghentikan atau memulai ulang WebJob berkelanjutan, klik kanan WebJob dalam daftar dan pilih tombol Hentikan atau Jalankan , lalu konfirmasi pilihan Anda.
Membuat WebJob yang dipicu secara manual
Di portal Azure, buka halaman App Service aplikasi web App Service, aplikasi API, atau aplikasi seluler Anda.
Di bawah Pengaturan di panel kiri, pilih WebJobs, lalu pilih Tambahkan.
Isi pengaturan Tambahkan WebJob seperti yang ditentukan dalam tabel, lalu pilih Buat Webjob.
Pengaturan Contoh nilai Deskripsi Nama myTriggeredWebJob Nama WebJob yang unik. Harus dimulai dengan huruf atau angka dan tidak boleh berisi karakter khusus selain "-"dan"_".Unggahan File ConsoleApp1.zip File .zip yang berisi file executable atau skrip Anda dan file pendukung apa pun yang diperlukan untuk menjalankan program atau skrip. Jenis file skrip atau eksekusi yang didukung tercantum di bagian Jenis file yang didukung. Jenis Tersulut Jenis WebJobs dijelaskan sebelumnya di artikel ini. Memicu Panduan WebJob yang baru muncul di halaman WebJobs. Jika Anda melihat pesan yang mengatakan bahwa WebJob ditambahkan, tetapi Anda tidak dapat menemukannya, pilih Refresh.
Untuk menjalankan WebJob yang dipicu secara manual, klik kanan WebJob dalam daftar dan pilih tombol Jalankan , lalu konfirmasi pilihan Anda.
Membuat WebJob terjadwal
Webjob yang telah dijadwalkan juga akan dipicu. Anda dapat menjadwalkan pemicu terjadi secara otomatis pada jadwal yang Anda tentukan.
Di portal Azure, buka halaman App Service aplikasi web App Service, aplikasi API, atau aplikasi seluler Anda.
Di bawah Pengaturan di panel kiri, pilih WebJobs, lalu pilih Tambahkan.
Isi pengaturan Tambahkan WebJob seperti yang ditentukan dalam tabel, lalu pilih Buat Webjob.
Pengaturan Contoh nilai Deskripsi Nama myScheduledWebJob (pekerjaan web terjadwal saya) Nama WebJob yang unik. Harus dimulai dengan huruf atau angka dan tidak boleh berisi karakter khusus selain "-"dan"_".Unggahan File ConsoleApp.zip File .zip yang berisi file executable atau skrip Anda dan file pendukung apa pun yang diperlukan untuk menjalankan program atau skrip. Jenis file skrip atau eksekusi yang didukung tercantum di bagian Jenis file yang didukung. Jenis Tersulut Jenis WebJobs dijelaskan sebelumnya di artikel ini. Memicu Dijadwalkan Agar penjadwalan dapat berjalan dengan lancar, aktifkan fitur Always On. Fitur Always On tersedia hanya pada lapisan harga Dasar, Standar, dan Premium. Ekspresi CRON 0 0/20 * * * * Ekspresi CRON diuraikan di bagian berikut. WebJob yang baru muncul di halaman WebJobs. Jika Anda melihat pesan yang mengatakan bahwa WebJob ditambahkan, tetapi Anda tidak dapat menemukannya, pilih Refresh.
WebJob terjadwal dijalankan sesuai dengan jadwal yang ditentukan oleh ekspresi CRON. Untuk menjalankannya secara manual kapan saja, klik kanan WebJob dalam daftar dan pilih tombol Jalankan , lalu konfirmasi pilihan Anda.
Ekspresi NCRONTAB
Ekspresi NCRONTAB mirip dengan ekspresi CRON, tetapi menyertakan bidang keenam tambahan di awal untuk presisi waktu dalam hitungan detik. Anda dapat memasukkan ekspresi NCRONTAB di portal atau menyertakan settings.job file di akar file .zip WebJob Anda, seperti dalam contoh berikut:
{
"schedule": "0 */15 * * * *"
}
Untuk informasi lebih lanjut, lihat Menjadwalkan WebJob yang dipicu.
Catatan
Zona waktu default yang digunakan untuk menjalankan ekspresi CRON adalah Waktu Universal Terkoordinasi (UTC). Agar ekspresi CRON Anda berjalan berdasarkan zona waktu lain, buat setelan aplikasi untuk aplikasi fungsi Anda yang bernama WEBSITE_TIME_ZONE. Untuk mempelajari lebih lanjut, lihat Zona waktu NCRONTAB.
Mengelola WebJobs
Anda dapat mengelola status eksekusi WebJobs individual yang berjalan di situs Anda dengan menggunakan portal Microsoft Azure. Buka Pengaturan>WebJobs, pilih WebJob, dan Anda bisa memulai dan menghentikan WebJob. Anda juga dapat melihat dan memodifikasi kata sandi webhook yang menjalankan WebJob.
Anda juga dapat mengonfigurasi pengaturan aplikasi bernama WEBJOBS_STOPPED dengan nilai 1 untuk menghentikan semua WebJobs yang berjalan di situs Anda. Anda dapat menggunakan metode ini untuk mencegah WebJobs yang bertabrakan berjalan baik di slot staging maupun produksi. Anda dapat menggunakan nilai 1 untuk pengaturan WEBJOBS_DISABLE_SCHEDULE guna menonaktifkan WebJobs berbasis pemicu di situs atau slot penahapan. Untuk slot, ingat untuk mengaktifkan opsi pengaturan slot Penyebaran agar pengaturannya sendiri tidak tertukar.
Menampilkan riwayat pekerjaan
Untuk WebJob yang ingin Anda lihat, pilih Logs.
Di halaman Detail WebJob, pilih waktu untuk melihat detail untuk satu pelaksanaan.
Di halaman Detail Jalannya WebJob, Anda dapat memilih unduh untuk mendapatkan file teks log, atau memilih tautan breadcrumb WebJobs di bagian atas halaman untuk melihat log untuk WebJob yang berbeda.
Status dari WebJob
Berikut ini adalah daftar status WebJob umum:
- Menginisialisasi: Aplikasi telah dimulai dan WebJob sedang melalui proses inisialisasinya.
- Mulai: WebJob sedang dimulai.
- Berjalan: WebJob sedang berjalan.
- PendingRestart: WebJob berkelanjutan keluar dalam waktu kurang dari dua menit sejak dimulai untuk alasan apa pun, dan App Service menunggu 60 detik sebelum memulai ulang WebJob. Jika WebJob berkelanjutan berhenti setelah batas waktu dua menit, App Service tidak menunggu 60 detik dan segera memulai ulang WebJob.
- Dihentikan: WebJob dihentikan (biasanya dari portal Microsoft Azure) dan saat ini tidak berjalan dan tidak akan berjalan sampai Anda memulainya lagi secara manual, bahkan untuk WebJob berkelanjutan atau terjadwal.
- Dibatalkan: Ini dapat terjadi karena banyak alasan, seperti ketika WebJob yang berjalan lama mencapai penanda waktu habis.