Fabrik Perkhidmatan Azure: Apa yang perlu anda ketahui

Perkhidmatan awan seperti Azure adalah sistem yang diedarkan secara besar-besaran, yang menjadi tuan rumah semua jenis perkhidmatan. Sebahagian daripadanya adalah infrastruktur yang dihosting, beberapa daripadanya adalah wadah dan perkhidmatan mikro, ada yang menjadi platform pengembangan, dan ada yang memanfaatkan corak tanpa pelayan.

Mereka semua memerlukan satu perkara: platform pengurusan dan orkestrasi. Alat awan silang untuk tujuan umum seperti Kubernetes menawarkan satu jalan untuk menyampaikan persekitaran kontena yang dikendalikan, tetapi ada juga tempat untuk persekitaran khusus yang menumpukan pada keperluan platform awan tertentu. Bagi Azure, itu dikendalikan oleh alat yang ada sejak hari-hari awal awan awam Microsoft: Azure Service Fabric.

Memperkenalkan Azure Fabric Service

Tersembunyi dalam asas Azure, Fabric Servis sukar untuk digambarkan. Tetapi kami melihatnya sepanjang masa, dalam alat yang kami gunakan untuk membina perisian asli cloud kami sendiri. Ia berada di tengah-tengah Azure's Event Hubs dan platform IoT, pangkalan data SQL dan Cosmos DBnya, dan banyak perkhidmatan perusahaan dan pengguna yang kami gunakan setiap hari. Dengan Azure Service Fabric, anda mendapat akses ke alat yang sama yang digunakan Microsoft untuk menjalankan dan mengurus perkhidmatannya sendiri, menjadikannya kod anda sendiri.

Tujuan Azure Service Fabric adalah untuk mempermudah penggunaan dan mengurus perkhidmatan mikro, menangani operasi bernegara dan tanpa status di seluruh instance PaaS Azure. Ini bukan hanya untuk Azure, kerana alat pembangunan tempatan adalah versi lengkap dari Azure Service Fabric, yang bermaksud ia akan berjalan di mana-mana sistem Windows. Versi Linux menjadikannya mudah alih di beberapa awan juga, menangani kod yang ada dan tersuai.

Azure Service Fabric menguruskan kitaran hayat aplikasi anda, dengan API yang memberikan akses platform tambahan di luar kod yang berdiri sendiri. Ia juga menyokong perkhidmatan mikro pelakon / mesej sendiri dan juga menghosting kod ASP.Net Core. Perkhidmatan boleh berjalan secara semula jadi sebagai proses, atau anda boleh menghostingnya dalam bekas, memberikan anda pilihan dengan cepat membawa kod yang ada ke Azure's PaaS. Container bercampur dengan model aplikasi Azure Service Fabric yang lain, yang membolehkan anda dengan cepat menyertakan fungsi yang ada melalui lift-and-shift atau dengan memasukkan aplikasi paket tertentu.

Mulakan dengan Azure Service Fabric

Mungkin cara terpantas untuk mula berkembang dengan Service Fabric adalah kerangka Perkhidmatan yang Boleh Dipercayai. Ini adalah sekumpulan API yang bergabung dengan ciri pengurusan kitaran hidup aplikasi Azure Service Fabric. Anda boleh menulis kod dalam bahasa yang disokong, atau dalam kerangka aplikasi pilihan anda. Perkhidmatan boleh tanpa status atau bernegara, dengan perkhidmatan tanpa status menggunakan storan luaran untuk menangani keadaan. Pilihan bernegara lebih menarik kerana menggunakan alat Servis Fabric sendiri untuk menguruskan keadaan aplikasi. Anda tidak perlu mempertimbangkan penskalaan atau ketersediaan tinggi; semuanya dikendalikan untuk anda.

Sekiranya anda telah menggunakan koleksi C #, anda akan dapat mengetahui Koleksi Boleh dipercayai Perkhidmatan Boleh Dipercayai. Mereka juga diadakan dalam keadaan yang sama seperti pengiraan anda, mengurangkan kependaman. Sekiranya perkhidmatan gagal, perkhidmatan dapat dilancarkan semasa dilancarkan semula. Mempunyai model keadaan yang berbeza membolehkan anda memilih model yang paling sesuai untuk perkhidmatan anda. Perkhidmatan sederhana yang hanya memerlukan data input untuk beroperasi tidak boleh bernegara, tetapi jika anda menggunakan kod yang perlu mengetahui keadaan sebelumnya, anda perlu membina Perkhidmatan yang Boleh Dipercayai.

Microsoft mempermudah untuk membina laman web dan aplikasi yang biasa di Azure Service Fabric dengan sokongan untuk ASP.Net Core. Walaupun tidak sepadan dengan kod 100 peratus dengan ASP.Net MVC, anda boleh memindahkan kod yang ada ke platform baru. Terdapat sokongan untuk membina perkhidmatan tanpa status dan bernegara, menyerahkan orkestrasi aplikasi dan penskalaan kepada Azure Service Fabric.

Bersesuaian dengan pelakon

Aplikasi yang dilahirkan di awan harus memanfaatkan kerangka Pelakon yang Boleh Dipercayai. Ini memperluas Perkhidmatan yang Boleh Dipercayai untuk melaksanakan pelakon maya (seperti yang digunakan oleh rangka kerja Project Orleans terbuka yang popular di bahagian belakang permainan). Menggunakan corak pelakon / mesej untuk mengendalikan perkhidmatan mikro dengan baik, kerana model sistem serentak yang mendasarinya skala dengan cepat dan dapat menangani banyak pelakon yang beroperasi pada masa yang sama.

Pelakon yang dipercayai bukan untuk setiap senario. Ia berfungsi dengan baik apabila kod anda dapat dipecah menjadi blok komputasi sederhana yang dapat dilaksanakan sebagai objek utas tunggal yang tidak menyekat yang tidak mempunyai keadaan atau menahan keadaannya sendiri. Paling baik untuk aplikasi yang sama sekali baru, kerana sukar untuk menguraikan kod yang ada. Membangun aplikasi menggunakan Reliable Actor boleh menjadi rumit, walaupun anda telah menentukan pelakon anda. Anda harus ingat bahawa walaupun pelakon dapat dikumpulkan sampah, keadaan mereka akan tetap ada dan dapat diakses ketika anda memanggil pelakon dengan ID yang sama di masa depan.

Pelakon yang Boleh Diandalkan menyelesaikan banyak masalah pengkomputeran yang diedarkan yang rumit, walaupun anda perlu memikirkan dengan teliti bagaimana anda memetakan objek kepada pelakon, dan bagaimana anda menggunakannya dalam aplikasi anda.

Fabrik Perkhidmatan Azure menjadi sumber terbuka

Microsoft baru-baru ini mengumumkan bahawa ia adalah Fabric Perkhidmatan sumber terbuka, mengubah model pembangunan menjadi model yang akan menerima permintaan tarikan pihak ketiga, dan juga membenarkan proses reka bentuk terbuka yang terbuka.

Beralih ke model pengembangan sumber terbuka, bersama dengan proses reka bentuk terbuka, adalah usaha besar untuk teknologi dasar seperti Azure Service Fabric. Walaupun tahap awal kod sumber terbuka berasaskan Linux, pasukan pengembangan Microsoft telah menunjukkan bahawa kod berasaskan Windows yang kini berjalan di Azure akan segera diikuti. Pembangunan akan dilakukan di GitHub, dengan banyak pekerjaan awal difokuskan pada penyelesaian peralihan dari platform dalaman Microsoft ke proses yang menghadap ke publik.

Microsoft telah merancang untuk memberikan Azure Service Fabric sumber terbuka untuk beberapa waktu sekarang - sekurang-kurangnya sejak permulaan kod Linux dari kod tersebut. Oleh kerana kedua-duanya adalah kod yang lebih baru dan menggunakan alat yang berbeza daripada versi Windows, jauh lebih mudah untuk menjadikan cawangan tersebut menjadi bentuk untuk siaran awam. Alat Windows lebih kompleks, dengan sejarah lebih kurang satu dekad yang perlu dirungkai dan direnovasi. Sebagian besar disebabkan oleh penggunaan alat pengembangan khusus Microsoft yang tidak tersedia untuk dunia luar, ditambah dengan kerja semula yang diperlukan untuk memindahkannya ke alat yang tersedia untuk umum.

Mempunyai alat seperti Azure Service Fabric yang anda miliki memberikan anda lebih banyak pilihan daripada PaaS tradisional, terutama ketika membuat aplikasi baru dari awal. Sokongan untuk kontena menambah keupayaan untuk membawa aplikasi yang dibungkus bersama kod anda. Begitu juga, menggunakan kerangka dan corak yang biasa dapat memendekkan keluk pembelajaran. Dengan sumber terbuka di masa depan, Azure Service Fabric boleh menjadi kerangka aplikasi multicloud yang anda cari.