Ada beberapa opsi di sini dalam Layanan Aplikasi. Saya tidak akan menyentuh Aplikasi Logika atau Otomatisasi Azure, yang juga menyentuh ruang ini.
Azure WebJobs
Artikel ini sejujurnya adalah penjelasan terbaik, tetapi saya akan meringkas di sini.
On Demand WebJobs alias. WebJobs terjadwal alias. WebJobs yang Dipicu
Triggered WebJobs adalah WebJobs yang dijalankan sekali ketika URL dipanggil atau ketika properti schedule ada di schedule.job . WebJobs Terjadwal hanyalah WebJobs yang telah memiliki Pekerjaan Azure Scheduler dibuat untuk memanggil URL kami pada jadwal, tetapi kami juga mendukung properti jadwal, seperti yang disebutkan sebelumnya.
Ringkasan:
+
Dapat dieksekusi / Script on demand
+
Eksekusi yang dijadwalkan
-
Harus dipicu melalui titik akhir .scm
-
Penskalaan adalah manual
-
VM selalu dibutuhkan
Continuous WebJobs (non SDK)
Pekerjaan-pekerjaan ini berjalan selamanya dan kami akan membangunkan mereka ketika mereka crash. Anda harus mengaktifkan Selalu Aktif agar ini berfungsi, yang artinya menjalankannya dalam tingkat Dasar dan di atas.
Ringkasan:
+
Executable / Script selalu berjalan
-
Membutuhkan selalu - Tingkat dasar dan di atas
-
VM selalu dibutuhkan
WebJobs berkelanjutan dengan SDK WebJobs
Ini bukan apa-apa dari sudut pandang "WebJobs fitur". Pada dasarnya, kami memiliki SDK manis yang kami tulis ini menargetkan WebJobs yang memungkinkan Anda mengeksekusi kode berdasarkan pemicu sederhana. Saya akan membicarakan hal ini lebih lanjut nanti.
Ringkasan:
+
Executable / Script selalu berjalan
+
Log / dasbor yang lebih tebal
+
Pemicu didukung bersama dengan tugas yang berjalan lama
-
Membutuhkan selalu - Tingkat dasar dan di atas
-
Penskalaan adalah manual untuk mengatur
-
Memulai bisa sedikit melelahkan
-
VM selalu dibutuhkan
Azure WebJobs SDK
Azure WebJobs SDK adalah SDK yang sepenuhnya terpisah dari fitur platform WebJobs. Ini dirancang untuk dijalankan di WebJob, tetapi benar-benar dapat dijalankan di mana saja. Kami memiliki pelanggan yang menjalankannya berdasarkan peran pekerja dan bahkan di cloud premier atau lainnya, meskipun dukungan hanyalah upaya terbaik.
SDK hanya membuatnya mudah untuk menjalankan beberapa kode sebagai reaksi terhadap beberapa peristiwa dan membuat ikatan ke layanan / dll. mudah. Ini sejujurnya dibahas dalam beberapa dokumen , tetapi intinya adalah sifat "peristiwa" + "kode". Kami juga telah melakukan beberapa pekerjaan ekstensiblitas yang keren, tapi itu sekunder untuk tujuan inti.
Ringkasan:
- Sebagian besar disebutkan di atas
+
Anda dapat memperluas dan menjalankan apa pun yang Anda inginkan. Kontrol penuh.
-
Hal-hal HTTP sedikit tidak pasti, tetapi berhasil
Fungsi Biru
Azure Functions adalah semua tentang mengambil tujuan inti dari WebJobs SDK, hosting sebagai layanan, dan membuatnya mudah untuk memulai dengan bahasa lain. Kami juga memperkenalkan konsep "Serverless" di sini karena sangat masuk akal untuk melakukannya - kami tahu bagaimana skala SDK kami, sehingga kami dapat melakukan hal-hal cerdas untuk Anda.
Fungsi Azure adalah pengalaman yang sangat terkelola. Kami tidak mendukung membawa tuan rumah Anda sendiri. Saat ini, kami tidak mendukung ekstensi khusus tetapi sesuatu yang sedang kami selidiki. Kami berpendapat tentang apa yang bisa dan tidak bisa Anda lakukan, tetapi untuk hal-hal yang kami aktifkan, mereka apik, dan mudah digunakan serta dikelola.
Namun, sebagian besar "kerangka" yang telah kami lakukan untuk meningkatkan fungsi melalui SDJ WebJobs. Misalnya, kami akan mengunggah NuGet baru untuk WebJobs yang benar-benar secara drastis meningkatkan kecepatan pencatatan, yang memiliki manfaat perf sangat besar bagi pengguna SDK WebJobs. Dalam Fungsi pengiriman sebagai "WebJobs SDK sebagai Layanan" kami telah benar-benar meningkatkan banyak masalah pengalaman.
Saya mungkin bias karena Functions adalah yang terbaru dan terhebat, tetapi merasa bebas untuk menembak lebih banyak kontra untuk Functions dengan cara saya.
Saya mungkin akan akhirnya menerbitkan blog yang sedikit lebih rumit, tapi saya mencoba untuk menjaga ini sesingkat mungkin untuk forum ini.