Identifikasi opsi teknologi

Selesai

Anda tidak punya banyak waktu untuk mendapatkan proses bisnis yang terintegrasi dengan baik antara sistem penyewaan sepeda yang ada dan sistem yang digunakan di kampus kedua. Anda ingin memaksimalkan keahlian Azure yang ada dan Anda telah membaca bahwa Azure menyertakan beberapa teknologi lain yang dapat Anda gunakan untuk memecahkan masalah seperti ini.

Dalam unit ini, kita akan menjelajahi opsi teknologi Azure yang tersedia untuk mengotomatiskan dan mengintegrasikan proses bisnis Anda.

Masalah bisnis umum

Dalam bisnis, salah satu cara untuk menjamin layanan dan produk berkualitas tinggi bagi pelanggan adalah dengan merancang dan menerapkan proses bisnis yang ketat. Proses tersebut mungkin melibatkan beberapa langkah, pengguna, dan beberapa paket perangkat lunak. Setiap proses dapat berjalan dalam lini kegiatan sederhana yang dilakukan pekerja satu demi satu atau aktivitas ini dapat bercabang atau berulang. Setiap proses juga dapat berjalan dengan cepat atau memakan waktu berhari-hari atau berminggu-minggu untuk diselesaikan.

Bisnis sering mengalami masalah saat bergabung dengan bisnis kedua atau terintegrasi dengan organisasi mitra. Bagaimana administrator dapat mengintegrasikan proses terpisah yang digunakan dalam dua organisasi, yang mungkin telah diterapkan menggunakan perangkat lunak yang berbeda?

Proses bisnis yang dimodelkan dalam perangkat lunak sering disebut alur kerja. Azure menyertakan empat teknologi berbeda yang dapat Anda gunakan untuk membangun dan menerapkan alur kerja yang mengintegrasikan beberapa sistem:

  • Logic Apps
  • Microsoft Power Automate
  • WebJobs
  • Azure Functions

Keempat teknologi ini memiliki beberapa kesamaan. Contohnya:

  • Semua teknologi ini dapat menerima input. Input adalah bagian dari data atau file yang dipasok ke alur kerja.
  • Teknologi ini dapat menjalankan tindakan. Tindakan adalah operasi sederhana yang dijalankan alur kerja dan mungkin sering memodifikasi data atau menyebabkan tindakan lain dilakukan.
  • Teknologi ini dapat meliputi kondisi. Kondisi adalah pengujian, sering dijalankan terhadap input, yang dapat memutuskan tindakan mana yang akan dijalankan berikutnya.
  • Teknologi ini dapat menghasilkan output. Output adalah bagian dari data atau file yang dibuat oleh alur kerja.

Selain itu, alur kerja yang dibuat dengan teknologi ini dapat dimulai berdasarkan jadwal atau dapat dipicu oleh beberapa peristiwa eksternal.

Teknologi design-first

Ketika analis bisnis mendiskusikan dan merencanakan proses bisnis, mereka dapat menggambar diagram alur di atas kertas. Dengan Logic Apps dan Microsoft Power Automate, Anda dapat mengambil pendekatan serupa untuk mendesain alur kerja. Keduanya mencakup antarmuka pengguna tempat Anda dapat menggambar alur kerja. Kami menyebut pendekatan ini sebagai pendekatan design-first.

Logic Apps

Logic Apps adalah layanan dalam Azure yang dapat Anda gunakan untuk mengotomatiskan, mengatur, dan mengintegrasikan komponen yang terpisah dalam aplikasi terdistribusi. Dengan menggunakan pendekatan design-first di Logic Apps, Anda dapat menggambar alur kerja kompleks yang memodelkan proses bisnis yang kompleks. Cuplikan layar berikut ini memperlihatkan Desainer Logic Apps dan kanvas desain yang Anda gunakan untuk menentukan alur kerja Anda.

Screenshot of the Logic Apps workflow designer in the Azure portal.

Atau, jika Anda lebih suka bekerja dengan kode, Anda dapat membuat atau mengedit alur kerja dalam notasi JSON menggunakan tampilan kode, seperti yang digambarkan dalam cuplikan layar berikut.

Screenshot of the Logic Apps code editor in the Azure portal.

Salah satu alasan mengapa Logic Apps sangat baik dalam integrasi adalah bahwa lebih dari 200 konektor disertakan. Konektor adalah komponen Logic Apps yang menyediakan antarmuka ke layanan eksternal. Misalnya, konektor X memungkinkan Anda mengirim dan mengambil postingan pendek, sementara konektor Office 365 Outlook memungkinkan Anda mengelola email, kalender, dan kontak Anda. Logic Apps menyediakan ratusan konektor siap pakai yang dapat Anda gunakan untuk membuat aplikasi. Jika memiliki sistem yang tidak biasa atau unik yang ingin Anda panggil dari Logic Apps, Anda dapat membuat konektor Anda sendiri jika sistem menampilkan REST API.

Microsoft Power Automate

Microsoft Power Automate adalah layanan yang dapat Anda gunakan untuk membuat alur kerja, meski Anda tidak memiliki pengembangan atau pengalaman Pro IT. Anda dapat membuat alur kerja yang mengintegrasikan dan mengatur banyak komponen berbeda dengan menggunakan situs web atau aplikasi seluler Power Automate Microsoft.

Ada empat jenis aliran yang dapat Anda buat:

  • Otomatis: Dimulai dengan pemicu dari beberapa kejadian. Misalnya, peristiwa tersebut bisa menjadi kedatangan postingan singkat baru atau file baru yang sedang diunggah.
  • Tombol: Menjalankan tugas berulang dengan satu klik dari perangkat seluler Anda.
  • Dijadwalkan: Berjalan secara teratur. Misalnya, seminggu sekali, pada tanggal tertentu, atau setelah 10 jam.
  • Proses bisnis: Membuat model proses bisnis seperti proses pemesanan stok atau prosedur pengaduan. Proses alur dapat memiliki: pemberitahuan kepada orang-orang yang diperlukan; dengan persetujuan mereka yang dicatat; tanggal kalender untuk langkah-langkah; dan waktu langkah alur yang dicatat.

Microsoft Power Automate menyediakan permukaan desain yang mudah digunakan untuk membuat jenis alur ini. Seperti yang diilustrasikan oleh cuplikan layar berikut, perancang alur memudahkan untuk merancang dan menata proses Anda.

Screenshot of the Microsoft Power Automate designer showing a workflow with a file trigger, an Office action to get a user's profile and an Outlook action to send an email.

Di bawah tenda, Microsoft Power Automate dibangun di Logic Apps. Fakta ini berarti bahwa Power Automate mendukung rangkaian konektor dan tindakan yang sama seperti Logic Apps. Anda juga dapat menggunakan konektor kustom di Microsoft Power Automate.

Perbandingan teknologi design-first

Seperti yang Anda lihat dari tabel berikut ini, Microsoft Power Automate lebih tepat untuk digunakan oleh staf non-teknis. Jika perancang alur kerja Anda adalah pekerja profesional TI, pengembang, atau praktisi DevOps, Logic Apps biasanya lebih cocok:

Microsoft Power Automate Logic Apps
Pengguna yang dimaksud Pekerja kantoran dan analis bisnis Pengembang dan profesional IT
Skenario yang dimaksud Pembuatan alur kerja layanan mandiri Proyek integrasi tingkat lanjut
Alat desain Hanya GUI. Browser dan aplikasi seluler Browser dan desainer Visual Studio. Pengeditan kode dimungkinkan
Manajemen Siklus Pakai Aplikasi Power Automate mencakup lingkungan pengujian dan produksi Kode sumber Logic Apps dapat disertakan dalam Azure DevOps dan sistem manajemen kode sumber

Teknologi code-first

Pengembang di tim Anda kemungkinan akan lebih suka menulis kode ketika ingin mengatur dan mengintegrasikan aplikasi bisnis yang berbeda ke dalam satu alur kerja. Ini adalah kasus saat Anda membutuhkan lebih banyak kontrol atas performa alur kerja Anda atau perlu menuliskan kode kustom sebagai bagian dari proses bisnis. Untuk orang-orang tersebut, Azure menyertakan WebJobs dan Functions.

WebJobs dan SDK WebJobs

Azure App Service adalah layanan hosting berbasis cloud untuk aplikasi web, back-ends seluler, dan API RESTful. Aplikasi ini sering perlu melakukan semacam proses di latar belakang. Misalnya, dalam sistem penyewaan sepeda Anda, ketika pengguna mengunggah foto sepeda, Anda mungkin perlu membuat foto thumbnail yang lebih kecil.

WebJobs adalah bagian dari Azure App Service yang dapat Anda gunakan untuk menjalankan program atau skrip secara otomatis. Ada dua jenis WebJob:

  • Berkelanjutan. Mulai segera saat WebJob dibuat dan berjalan dalam perulangan berkelanjutan. Misalnya, Anda dapat menggunakan WebJob berkelanjutan guna memeriksa folder bersama untuk foto baru.
  • Terpicu. Dimulai berdasarkan peristiwa yang mengikat, pada jadwal, atau saat Anda memicunya secara manual (sesuai permintaan).

Untuk menentukan tindakan apa yang dilakukan WebJob, Anda dapat menulis kode dalam beberapa bahasa berbeda. Misalnya, Anda dapat menulis skrip WebJob dengan menuliskan kode di Skrip Shell (Windows, PowerShell, Bash). Atau, Anda dapat menulis program dalam PHP, Python, Java, atau JavaScript.

Anda juga dapat memprogram WebJob dengan menggunakan .NET dan bahasa .NET seperti C# atau VB.NET. Dalam hal ini, Anda juga dapat menggunakan SDK WebJobs untuk mempermudah tugas. SDK tersebut meliputi berbagai kelas, seperti JobHostConfiguration dan HostBuilder, yang mengurangi jumlah kode yang diperlukan untuk berinteraksi dengan Azure App Service.

SDK WebJobs hanya mendukung C# dan manajer paket NuGet.

Azure Functions

Azure Function adalah cara sederhana bagi Anda untuk menjalankan potongan-potongan kecil kode di cloud, tanpa harus khawatir tentang infrastruktur yang diperlukan untuk meng-host kode tersebut. Anda dapat menuliskan Function di C#, Java, JavaScript, PowerShell, Python, atau bahasa apa pun yang tercantum dalam artikel Bahasa yang didukung di Azure Functions. Selain itu, dengan opsi paket konsumsi, Anda hanya membayar waktu ketika kode berjalan. Azure secara otomatis menskalakan fungsi Anda sebagai respons terhadap permintaan dari pengguna.

Saat membuat Azure Function, Anda dapat mulai dengan menuliskan kode untuk itu di portal. Atau, jika Anda memerlukan manajemen kode sumber, Anda dapat menggunakan Layanan GitHub atau Azure DevOps.

Untuk membuat Azure Function, pilih dari rentang templat. Daftar berikut ini adalah contoh beberapa templat yang tersedia untuk Anda:

  • Pemicu HTTP. Jika Anda ingin kode dijalankan sebagai respons terhadap permintaan yang dikirim melalui protokol HTTP.
  • Pemicu timer. Jika Anda ingin kode dijalankan sesuai jadwal.
  • Pemicu penyimpanan blob. Jika Anda ingin kode dijalankan saat blob baru ditambahkan ke akun Azure Storage.
  • Pemicu Cosmos DB. Jika Anda ingin kode dijalankan sebagai respons terhadap dokumen baru atau yang diperbarui dalam database NoSQL.

Azure Functions dapat berintegrasi dengan banyak layanan berbeda baik dalam Azure maupun dari pihak ketiga. Layanan ini dapat memicu fungsi Anda, atau mengirim input data ke fungsi Anda, atau menerima output data dari fungsi Anda.

Perbandingan teknologi code-first

Dalam kebanyakan kasus, administrasi sederhana dan model pengkodean yang lebih fleksibel yang disediakan oleh Azure Functions dapat menggiring Anda untuk lebih memilihnya dibanding dengan WebJobs. Namun, Anda dapat memilih WebJobs karena alasan berikut:

  • Anda ingin kode menjadi bagian dari aplikasi App Service yang ada dan dikelola sebagai bagian dari aplikasi tersebut, misalnya di lingkungan Azure DevOps yang sama.
  • Anda perlu kontrol ketat atas objek yang mendengarkan peristiwa yang memicu kode. Objek yang dimaksud ini adalah kelas JobHost, dan Anda memiliki lebih banyak fleksibilitas untuk memodifikasi perilakunya di WebJobs.
Azure WebJobs Azure Functions
Bahasa yang didukung C# jika Anda menggunakan SDK WebJobs C#, Java, JavaScript, PowerShell, dan lainnya
Penskalakan otomatis Tidak Ya
Pengembangan dan pengujian di browser Tidak Ya
Harga bayar sesuai penggunaan Tidak Ya
Integrasikan dengan Logic Apps Tidak Ya
Pengelola paket NuGet jika Anda menggunakan SDK WebJobs NuGet dan NPM
Dapat menjadi bagian dari aplikasi App Service Ya Ya (dihosting berdasarkan paket App Service)
Menyediakan kontrol jarak dekat atas JobHost Ya Tidak

Sekarang Anda tahu apa teknologi design-first dan code-first mana yang tersedia untuk Anda, bagaimana Anda mempersempit pilihan Anda? Kita akan melihat pertanyaan ini di unit berikutnya.