Rumah Bisnis Layanan Mikro: apa itu dan mengapa bisnis Anda harus peduli

Layanan Mikro: apa itu dan mengapa bisnis Anda harus peduli

Video: Kenapa Bisnis Anda Gagal Terus? (Oktober 2024)

Video: Kenapa Bisnis Anda Gagal Terus? (Oktober 2024)
Anonim

Lansekap perangkat lunak perusahaan dipenuhi dengan teknologi buzzy. Kami telah menulis tentang banyak dari mereka, baik itu blockchain, pengembangan kode rendah, atau tren baru lainnya yang mengubah cara kami bekerja. Satu kata kunci baru yang mungkin belum pernah Anda dengar sebelumnya adalah "layanan microser."

Itu dengan desain. Layanan microser adalah cara yang berbeda untuk perangkat lunak arsitek yang didasarkan pada serangkaian komponen modular yang terjalin daripada gagasan tradisional tentang "monolit" -sebuah aplikasi yang terdiri dari satu tumpukan kode yang terus tumbuh. Aplikasi berbasis layanan Microsoft tidak terlihat berbeda dari sisi antarmuka pengguna (UI), apakah itu dalam aplikasi pusat data yang kompleks atau aplikasi web atau seluler yang dihosting di infrastruktur cloud yang dapat diskalakan.

Alasan bisnis harus peduli dengan layanan mikro adalah bahwa, di balik layar, arsitektur dapat membantu pengembangan Anda dan tim TI bekerja dan berinovasi lebih cepat, mengelola infrastruktur, dan mengurangi biaya dan kerumitan menambahkan fitur dan fungsi baru ke aplikasi. Al Hilwa, Direktur Program untuk Pengembangan Perangkat Lunak Penelitian Aplikasi di IDC, menjelaskan bagaimana ia akan meluncurkan layanan microser kepada eksekutif sambil mengingat baik tantangan budaya dan teknologi.

"Ketika membangun sistem baru, mungkin titik kuncinya adalah mengenali bahwa satu layanan mikro harus dibangun oleh tim kecil, " kata Hilwa. "Kedua, toleransi keanekaragaman dalam bahasa pemrograman dan alur kerja pengembang sering tersirat oleh sifat independen dari budaya layanan-mikro secara keseluruhan. Pijakan utama untuk eksekutif adalah membangun perangkat lunak secara bertahap menggunakan tim kecil, dengan masing-masing membangun modul yang koheren dengan publikasi antarmuka. Keuntungannya adalah bahwa modul independen dapat dikembangkan pada kecepatan yang jauh lebih cepat secara independen selama API yang diterbitkan dikelola dengan cara yang terorganisir."

Apa itu Layanan Mikro, Benarkah?

Hilwa menulis laporan IDC 2015 berjudul, "Munculnya Layanan Mikro sebagai Pendekatan Arsitektur Baru untuk Membangun Sistem Perangkat Lunak Baru." Dalam laporan tersebut, ia mendefinisikan layanan microser sebagai arsitektur perangkat lunak granular di mana komponen aplikasi dirancang dan dikembangkan secara independen untuk memenuhi persyaratan interoperabilitas yang ditentukan API (artinya, terikat kembali ke dalam aplikasi secara keseluruhan). Layanan microser tidak ada dalam ruang hampa. Arsitektur baru membutuhkan dukungan organisasi yang kuat dan perubahan budaya TI.

Layanan Microsoft juga tidak didefinisikan oleh satu teknologi tertentu tetapi sebagai evolusi dari konsep arsitektur berorientasi layanan (SOA) yang telah lama ditambah dengan munculnya wadah dan munculnya otomatisasi melalui pendekatan pengembangan seperti pengiriman berkelanjutan (CD) dan integrasi berkelanjutan (CI).

"Organisasi yang menggunakan layanan mikro saat ini biasanya dimotivasi oleh keinginan untuk mempercepat evolusi layanan, " kata Hilwa. "Jadi, dalam sebagian besar kasus seperti itu, layanan microser menggunakan CI / CD automation untuk tingkat yang besar. Namun, kecepatan penyebaran yang sebenarnya mungkin berbeda antara layanan. Saya pikir kuncinya adalah untuk melihat baik-baik budaya internal dan menjadi yakin bahwa Anda bersedia mentoleransi desentralisasi dan keanekaragaman yang lebih besar dalam tumpukan teknologi."

Dengan "budaya internal" Hilwa sebagian besar mengacu pada DevOps, sebuah filosofi yang menggabungkan pengembangan perangkat lunak, operasi TI, dan jaminan kualitas (QA) ke dalam alur kerja tunggal yang kolaboratif. Startup perangkat lunak DevOps, HashiCorp dan para pendirinya telah lama menjadi pendukung layanan microser. Perusahaan, yang baru-baru ini mendapatkan pendanaan Seri B senilai $ 24 juta, menghitung perusahaan seperti Cisco, DigitalOcean, Mozilla, dan Stripe di antara pengguna open-source dan pelanggan perusahaan.

Microservices adalah inti bagaimana HashiCorp mendekati pengembangan infrastruktur DevOps dan alur kerja aplikasi di seluruh perangkat open-source yang populer dan pengembangan rangkaian produk perusahaan. Armon Dadgar, CTO dan salah satu pendiri HashiCorp, merinci perbedaan antara monolit dan layanan mikro dengan menggunakan analogi sederhana: Amazon dan eBay.

"Pikirkan tentang Amazon dan eBay sebagai aplikasi tunggal. Dari perspektif pengguna akhir, mereka terlihat serupa tetapi, di belakang layar, perusahaan mengambil pendekatan yang berlawanan dalam cara mereka membangun dan merancang aplikasi mereka, " kata Dadgar. "Amazon dari awal telah menjadi bundel dari layanan microser; ia bertindak sebagai aplikasi tunggal. Tetapi jika Anda melakukan pencarian, katalog produk, keranjang belanja, faktur, aliran pesanan, dan membagi fungsi-fungsi itu, kedua aplikasi berjalan pada berbagai mesin."

Analogi Amazon juga meluas ke bagaimana Amazon sendiri terstruktur. Dadgar menjelaskan pendekatan teknologi seperti layanan mikro sebagai alat untuk mendukung gerakan proses yang lebih besar menuju DevOps. "Two Pizza Rule" karya Jeff Bezos berhasil sehingga hanya antara lima dan delapan orang yang ada di tim Amazon mana pun. Jika tim bertambah besar, maka terbagi menjadi dua.

Hirarki organisasi Amazon mulai memetakan ke arah yang digambarkan Dadgar sebagai "dekomposisi fungsi." Dipisahkan pada tingkat arsitektur organisasi dan modular, setiap tim kemudian memiliki kemampuan untuk mengembangkan dan bereksperimen lebih bebas, tanpa perlu mengoordinasikan setiap perubahan - semuanya masih berfungsi sebagai bagian dari aplikasi kohesif tunggal.

"eBay mengambil pendekatan monolitik; mereka membangun semua eBay sebagai panjang, 50 juta baris aplikasi kode, " kata Dadgar. "Pendekatan microservices lebih menyakitkan pada awalnya karena masalah modularitas dan interoperabilitas adalah masalah yang tidak ada dalam monolit. Tetapi hal-hal mulai rusak ketika aplikasi tumbuh terlalu besar. Dalam monolit, tidak ada pembusukan.

"Pikirkan tentang ratusan atau ribuan pengembang yang berkolaborasi pada basis kode tunggal dan mencoba untuk berkoordinasi. Tim QA yang menambahkan fungsionalitas di satu sisi aplikasi dapat memecah sesuatu di sisi lain karena tidak ada pemisahan peran dan tanggung jawab yang jelas. Untuk memperbaikinya itu, Anda mulai membutuhkan lebih banyak dan lebih banyak koordinasi antara manajer proyek dan proses QA yang dapat memakan waktu berminggu-minggu dan pengembangan kemacetan, tidak peduli seberapa cepat tim itu bekerja. Terlalu banyak koki di dapur."

Kontainer dan Layanan Mikro Di Dunia DevOps

Cara di mana bisnis Anda mengimplementasikan arsitektur layanan-mikro akan sangat menentukan untuk menentukan apakah investasi terbayar atau tidak. Layanan Microsoft banyak pekerjaan di muka, terutama dalam integrasi API yang diperlukan untuk memastikan semua layanan berbicara satu sama lain. Hilwa menjelaskan bahwa ini bahkan lebih rumit ketika mencoba mengintegrasikan layanan microser ke dalam sistem yang ada; ia merekomendasikan bahwa perusahaan membangun sistem baru bila memungkinkan alih-alih merancang ulang aplikasi monolit lama untuk layanan mikro.

"Arsitektur sistem tradisional biasanya melibatkan sistem basis data yang besar dan kompleks dengan skema normalisasi yang rumit, " kata Hilwa. "Memfaktorkan sistem seperti itu ke dalam komponen yang lebih kecil dengan sistem independennya sendiri membutuhkan banyak pekerjaan desain basis data dan secara efektif menulis ulang sebagian besar logika aplikasi inti. Pada umumnya, hal ini menghabiskan banyak waktu dan biaya."

Jika Anda merancang ulang aplikasi warisan, maka Hilwa menyarankan Anda melakukannya secara bertahap. Meskipun lebih penting daripada integrasi API, layanan microser tidak akan berfungsi tanpa budaya DevOps di belakangnya. Dadgar HashiCorp mengatakan bahwa, ketika datang ke payung yang lebih besar dari DevOps, layanan microser menjadi alat untuk memfasilitasi pergeseran proses yang lebih besar ke arah perubahan alur kerja yang mendasar dengan mana kami mengirimkan aplikasi. Dia menunjuk ke Tao HashiCorp yang diletakkan ketika dia dan salah satu pendiri Mitchell Hashimoto memulai perusahaan: sederhana, modular, dan komposer.

"DevOps dalam arti tertentu adalah istilah yang bahkan lebih kelebihan daripada layanan-layanan microser, " kata Dadgar. "Tetapi sebuah bisnis terdiri dari orang-orang dengan spesialisasi pengetahuan yang berbeda: pengembang, operator, petugas keamanan. Dan kemudian Anda memiliki proses, cara Anda mengatur orang-orang itu. Kemudian Anda memiliki alat untuk mendukung proses itu, yang merupakan tempat layanan-layanan dan wadah mikro Silahkan masuk."

Wadah, yang dipopulerkan oleh ledakan open-source Docker, masih jauh dari menjadi satu-satunya perusahaan alat yang dapat digunakan untuk memfasilitasi layanan-layanan microser. Hilwa dari IDC mengatakan bahwa wadah digunakan dalam aplikasi modern sebagai bagian dari alur kerja CI / CD dan, dalam beberapa kasus, saat digunakan untuk produksi. Namun dia mengatakan layanan microser dapat memanfaatkan mesin virtual (VM) juga, tanpa perlu wadah.

Yang mengatakan, ketika datang ke cara di mana awan bisnis berkembang, wadah Docker dan layanan mikro adalah kombinasi perkakas yang kuat yang dianut oleh bisnis dari segala bentuk dan ukuran - dari startup seperti HashiCorp hingga perusahaan raksasa seperti Oracle. Ayah HashiCorp mengatakan bahwa wadah adalah sarana yang nyaman bagi Dev dan Ops (dan, oleh asosiasi, berbagai tim dan layanan) untuk berkomunikasi satu sama lain.

"Apa artefak yang kita lewati antara pengembang dan operator? Apa yang kita mengalir dengan teliti dan dibangun di sekitar? Kontainer adalah unit yang nyaman untuk dilewati, " kata Dadgar. "Pikirkan tentang produk pengiriman perusahaan global di seluruh dunia. Baik itu kapal barang, kereta kargo, atau truk, itu adalah unit yang sama mengalir melalui seluruh sistem."

DevOps dan layanan mikro masih jauh dari adopsi perusahaan yang luas tetapi pasar hanya tumbuh. Menurut laporan IDC, arsitektur layanan microsoft akan memasuki fase pematangan selama lima tahun ke depan. Kematangan ini akan terjadi segera setelah budaya DevOps mencapai 50 persen organisasi pada tahun 2020, evolusi berkelanjutan dari perangkat otomasi perangkat lunak, dan dominasi infrastruktur cloud yang murah dan scalable yang disediakan oleh orang-orang seperti Amazon Web Services (AWS) dan Microsoft Azure.

Dadgar mengatakan bahwa, bahkan dengan sebagian kecil dari perusahaan yang merangkul DevOps dan layanan mikro saat ini, HashiCorp sudah kelebihan permintaan. Ini mencapai pendapatan tujuh digit pertama setelah hanya sembilan bulan penjualan perusahaan, di atas komunitas open-source di GitHub dari beberapa juta pengguna aktif bulanan. Microservices hanya bagian dari alur kerja tooling aplikasi alur kerja HashiCorp dan peta jalan infrastruktur DevOps yang lebih besar. Tetapi modularitas dan interoperabilitas di bawah segala yang dibangun perusahaan telah memicu kebangkitan salah satu startup perangkat lunak terpanas di Silicon Valley.

"Empat tahun yang lalu ketika kami mulai, kami akan pergi ke pertemuan dan menyampaikan visi kami tentang bagaimana infrastruktur akan dikelola, " kata Dadgar. "Kami tidak benar-benar tertawa keluar dari ruangan; kami tahu itu sejak awal. Tapi sekarang alat kami seperti Terraform sedang dalam perjalanan mereka untuk menjadi standar industri. Apa yang akan kita lihat adalah efek domino dari tekanan kompetitif dan, dalam jangka panjang, peran kami akan bekerja dengan CIO dan CTO untuk memahami perubahan proses yang harus mereka ambil.

"Pikirkan tentang Toyota saat itu, " lanjut Dadgar. "Anda memiliki banyak perusahaan mobil yang membuat produk tetapi biayanya lebih tinggi dari yang seharusnya. Toyota tidak menemukan kembali apa mobil itu; mereka hanya lebih teliti dan bertahap tentang prosesnya, dan beralih dari bahan tertawaan ke pembangkit tenaga listrik, memaksa sisa industri untuk mengadopsi serangkaian praktik yang sama agar tetap kompetitif. Saat ini, kami memiliki para pemimpin industri yang bertanya bagaimana mereka bisa mendapatkan keunggulan kompetitif, dan jawaban mereka adalah mengadopsi praktik-praktik Google dan Amazon pasar. titik, itu akan mencapai massa kritis."

Layanan Mikro: apa itu dan mengapa bisnis Anda harus peduli