Programavimas

„Azure“ paslaugų audinys: ką reikia žinoti

Debesų paslaugos, pvz., „Azure“, yra didžiulės paskirstytos sistemos, kuriose teikiamos įvairiausios paslaugos. Kai kurie iš jų yra priglobta infrastruktūra, kai kurie iš jų yra konteineriai ir mikropaslaugos, kai kurie yra kūrimo platformos, o kai kurie naudojasi serverių modelių pranašumais.

Jiems visiems reikia vieno dalyko: valdymo ir orkestro platformos. Bendrosios paskirties „debesų“ įrankiai, pvz., „Kubernetes“, siūlo vieną kelią pristatyti valdomą konteinerių aplinką, tačiau taip pat yra vietos pritaikytoms aplinkoms, kurios orientuojasi į konkrečios debesies platformos poreikius. „Azure“ tai tvarko įrankis, kuris buvo nuo ankstyviausių „Microsoft“ viešojo debesies dienų: „Azure Service Fabric“.

Pristatome „Azure Service Fabric“

„Azure“ pamatuose paslėptą „Service Fabric“ gali būti sunku apibūdinti. Bet mes tai matome nuolat, įrankiuose, kuriuos naudojame kurdami savo programinę įrangą, skirtą debesims. Tai yra „Azure“ renginių centrų ir „IoT“ platformos, jos SQL ir „Cosmos DB“ duomenų bazių ir daugelio kasdien naudojamų įmonių ir vartotojų paslaugų esmė. Naudodami „Azure Service Fabric“, gausite prieigą prie tų pačių įrankių, kuriuos „Microsoft“ naudoja vykdydama ir valdydama savo paslaugas, sudarydama jas į savo kodą.

„Azure Service Fabric“ tikslas yra palengvinti mikroservių diegimą ir valdymą, valdant valstybines ir be pilietybės operacijas „PaaS Azure“ egzemplioriuje. Tai skirta ne tik „Azure“, nes vietinis kūrimo įrankis yra išsami „Azure Service Fabric“ versija, o tai reiškia, kad jis veiks bet kurioje „Windows“ sistemoje. „Linux“ versija leidžia ją perkelti ir keliuose debesyse, tvarkant esamą ir pasirinktinį kodą.

„Azure Service Fabric“ valdo jūsų programos gyvavimo ciklą su API, suteikiančiomis papildomą prieigą prie platformos, išskyrus grynai atskirą kodą. Jis taip pat palaiko savo veikėjų / pranešimų mikropaslaugas ir prieglobos ASP.Net Core kodą. Paslaugos gali veikti natūraliai kaip procesai arba galite jas talpinti konteineriuose, suteikdami galimybę greitai perkelti esamą kodą į „Azure“ PaaS. Konteineriai derinami su kitais „Azure Service Fabric“ programų modeliais, leidžiančiais greitai įtraukti esamas funkcijas keliant ir perkeliant arba įtraukiant konkrečias supakuotas programas.

Pradėkite naudoti „Azure Service Fabric“

Galbūt greičiausias būdas pradėti kurti naudojant „Service Fabric“ yra jos patikimų paslaugų sistema. Tai yra API rinkinys, kuris integruojamas su „Azure Service Fabric“ programos gyvavimo ciklo valdymo funkcijomis. Galite parašyti kodą bet kuria palaikoma kalba arba pasirinkta programos struktūra. Paslaugos gali būti be pilietybės ar valstybinės, be pilietybės paslaugos, naudodamos išorinę atmintinę, tvarko būseną. „Stateful“ parinktis yra įdomesnė, nes ji naudoja „Service Fabric“ įrankius tvarkydama programos būseną. Jums nereikia galvoti apie mastelį ar didelį prieinamumą; viskas tvarkoma jums.

Jei naudojote C # kolekcijas, jums bus žinomos patikimos tarnybos patikimos kolekcijos. Jie taip pat laikomi tuo pačiu atveju, kaip ir jūsų skaičiavimas, taip sumažinant vėlavimą. Jei paslauga nepavyksta, ji gali atnaujinti būseną. Skirtingi būsenos modeliai leidžia pasirinkti modelį, kuris geriausiai tinka jūsų paslaugoms. Paprastos paslaugos, kurių veikimui reikalingi tik įvesties duomenys, gali būti be pilietybės, tačiau jei dirbate su kodu, kuriam reikia žinoti ankstesnę būseną, turėsite sukurti patikimą paslaugą.

„Microsoft“ leidžia lengvai kurti žinomus žiniatinklio ir programų galus „Azure Service Fabric“ palaikant ASP.Net Core. Nors jis nėra 100 proc. Suderinamas su kodu su ASP.Net MVC, galite perkelti esamą kodą į naują platformą. Yra palaikymas kuriant tiek valstybes be pilietybės, tiek valstybines paslaugas, perduodant programų tvarkymą ir mastelį „Azure Service Fabric“.

Mastelio suderinamumas su aktoriais

„Debesyje gimusios“ programos turėtų pasinaudoti „Reliable Actor“ sistemos pranašumais. Tai praplečia „Patikimas paslaugas“, kad įgyvendintų virtualius veikėjus (kaip naudoja atviroji „Project Orleans“ sistema, kuri yra populiari žaidimų gale). Aktoriaus / pranešimo modelio naudojimas tvarkant mikropaslaugas veikia gerai, nes jo pagrindiniai tuo pačiu metu veikiančių sistemų modeliai greitai keičiasi ir gali valdyti daugelį tuo pačiu metu veikiančių veikėjų.

Patikimas aktorius tinka ne kiekvienam scenarijui. Tai geriausiai veikia tada, kai jūsų kodą galima suskirstyti į paprastus skaičiavimo blokus, kuriuos galima įgyvendinti kaip neblokuojančius vienos gijos objektus, kurie neturi arba turi savo būseną. Tai geriausia visiškai naujoms programoms, nes sunku suskaidyti esamą kodą. Programos kūrimas naudojant „Patikimą aktorių“ gali būti sudėtingas, net jei apibrėžėte savo veikėjus. Turite nepamiršti, kad nors aktoriai gali būti renkami šiukšlių, jų būsena išliks ir bus pasiekiama, kai ateityje paskambinsite aktoriui su tuo pačiu ID.

Patikimas aktorius išsprendžia daugybę sudėtingų paskirstytų skaičiavimo problemų, nors turėsite gerai pagalvoti, kaip objektus susieti su aktoriais ir kaip juos panaudosite savo programose.

„Azure Service Fabric“ yra atvirojo kodo

„Microsoft“ neseniai paskelbė, kad tai yra „Open Fabric“ šaltinis „Service Fabric“, keičiantis kūrimo modelį į tokį, kuris priims trečiųjų šalių užklausas, taip pat leidžiantis atlikti viešą, atvirą projektavimo procesą.

Perėjimas prie atvirojo kodo kūrimo modelio kartu su atviro projektavimo procesu yra didžiulė pagrindinės technologijos, tokios kaip „Azure Service Fabric“, įmonė. Nors pradinė atvirojo kodo dalis priklauso nuo „Linux“, „Microsoft“ kūrėjų komanda nurodė, kad netrukus bus vykdomas „Windows“ pagrindu sukurtas kodas, kuris šiuo metu veikia „Azure“. Programa bus plėtojama „GitHub“, daug pradinio darbo sutelkiant dėmesį į perėjimo iš „Microsoft“ vidinių platformų į visuomenei procesą užbaigimą.

„Microsoft“ jau kurį laiką planuoja pristatyti atvirojo kodo „Azure Service Fabric“ - bent jau nuo „Linux“ kodo šakos pradžios. Kadangi tai ir naujesnis kodas, ir naudojamas kitas įrankis nei „Windows“ versijoje, buvo daug lengviau pasiekti, kad ši šaka būtų viešai išleista. „Windows“ įrankis yra sudėtingesnis, jame yra maždaug dešimtmetis istorijos, kurią reikia išnarplioti ir atnaujinti. Didžioji to dalis yra dėl to, kad naudojami tik „Microsoft“ kūrimo įrankiai, kurie nėra prieinami išoriniam pasauliui, ir pertvarkymas, reikalingas norint jį perkelti į viešai prieinamus įrankius.

Turėdami tokį įrankį kaip „Azure Service Fabric“, gausite daug daugiau galimybių nei tradicinis „PaaS“, ypač kurdami naujas programas nuo nulio. Konteinerių palaikymas suteikia galimybę kartu su kodu pateikti supakuotas programas. Panašiai, naudojant žinomas sistemas ir modelius, galima sutrumpinti mokymosi kreivę. Atviro kodo ateitis, „Azure Service Fabric“ gali būti jūsų ieškoma „multicloud“ programų sistema.