Mikropakalpojumi: atvērtā koda sistēmas un programmatūras arhitektūra

Mikroservisi: moderna programmatūras arhitektūra

Mikroservisi: moderna programmatūras arhitektūra

Turpinot ar evolūcijas tēma un paradigmu un darba metožu izmaiņas programmatūras izstrādes jomā, kurai mēs nesen pieskārāmies rakstos ar nosaukumu "Programmatūras izstrāde: vēsturisks pārskats līdz mūsdienām", "Savietojamība caur mākoņu: kā to panākt?" y "XaaS: Mākoņdatošana - viss kā pakalpojums", šodien mēs parunāsim Mikropakalpojumi.

Mikroservisi ir moderna programmatūras arhitektūra, nevis API (lietojumprogrammu saskarne) vai pati tehnoloģija, ko var instalēt un izmantot. Programmatūras arhitektūras, kas pazīstamas arī kā programmatūras modeļi, ir pilnīgi svešas programmēšanas valodām, jo ​​tās nosaka tikai veidu, kā tehnoloģijām jādarbojas, nevis to, kā tās tiek ieviestas.

Mikropakalpojumi: Ievads

Ievads

Mikropakalpojumus var uzskatīt par SOA arhitektūras (uz pakalpojumiem orientētas arhitektūras) evolūciju, kas izstrādātājiem palīdz izveidot modulārākas lietojumprogrammas, kas ir funkcionālas un autonomas, ar lielu jaudu efektīvai atkārtotai izmantošanai, kā tas tiek darīts līdzīgā veidā, kad mēs optimizējam dažas aparatūras izmantošanu, kurā tā izvēršas tikai ir patiešām nepieciešams, tā vietā, lai nevajadzīgi izvērstu savu potenciālu.

Mikroservisu arhitektūra, praksē tas nav kļuvis tik plaši izplatīts kā teorētiski, tas ir, tas ir labāk pazīstams nekā izmantots. Tomēr katru dienu daudzi izstrādātāji to ievieš, jo tas ir programmatūras izstrādes modelis uzlabo mainīgo lielumu laiku, veiktspēju un stabilitāti projektos, kur tie tiek izmantoti. Turklāt viņa vienkārša saistītā mērogojamība padara to īpaši piemērotu attīstībā, kurā ir būtiska starpplatformu savietojamība (Web, Mobile, Wearables, IoT).

Mikropakalpojumi: darba shēma

Bet savukārt SOA ir augstāka līmeņa arhitektūra, tas ir, arhitektūra, kurā tiek veidotas uz pakalpojumiem balstītas lietojumprogrammas, kur pakalpojums ir mazākā un funkcionālākā darba vienība izveidotajā lietojumprogrammā, Mikroservisu arhitektūra arī ļauj mums izveidot pakalpojumus, bet šie pakalpojumi ir izstrādāti ļoti mazā un konkrētā veidā tā, lai tie izpildītu ļoti precīzu un precīzu funkcionalitāti, tādā veidā, ka tos var atvienot no pārējiem lietojumiem un darboties pilnīgi autonomā veidā no pārējās lietojumprogrammas, kur tā tika izveidota.

Mikroservisi: kas tie ir un kādi tie ir?

Kas ir programmatūras arhitektūra (modeļi)?

Lai labi izprastu mikropakalpojumu programmatūras arhitektūru, ir labi mazliet zināt par visām pazīstamākajām esošajām programmatūras arhitektūrām. Ir daudz esošo, kā redzams vietnē Oodizains vai vienkārši iekšā Wikipedia, bet saskaņā ar slaveno grāmatu sauc "Rakstu dizaina grāmata" (Dizaina rakstu grāmata) esošos modeļus var klasificēt kā:

Radošs

Tie, kas nodarbojas ar objektu eksponēšanas veidiem un kuru mērķis ir abstrahēt eksekventizācijas procesu un slēpt detaļas par objektu radīšanu vai inicializēšanu. Šajā klasē ir šādi:

  • Abstrakta fabrika
  • Celtnieks
  • Rūpnīcas metode
  • Prototips
  • vieninieks

Strukturālā

Tie, kas apraksta, kā klases un objektus (vienkāršus vai saliktus) var apvienot, veidojot lielas struktūras un nodrošinot jaunu funkcionalitāti. Šajā klasē ir šādi:

  • Adapteris
  • Tilts
  • Salikts
  • Dekorators
  • Fasāde
  • Lidojošais svars
  • Pilnvara

Uzvedība

Tie, kas mums palīdz noteikt komunikāciju un iterāciju starp sistēmas objektiem. Šī modeļa mērķis ir samazināt saikni starp objektiem. Šajā klasē ir šādi:

  • Atbildības ķēde
  • Komanda
  • tulks
  • Iterators
  • Starpnieks
  • Atgādinājums
  • Novērotājs
  • Valsts
  • Stratēģija
  • Veidnes metode
  • apmeklētājs

pārējie

Iepriekšējie dizaina modeļi izteica shēmas, kas nosaka dizaina struktūras, ar kurām veidot programmatūras sistēmas. Bet, kad mēs vēlamies labāk izteikt fundamentālo organizatorisko un strukturālo shēmu izveidotajām programmatūras sistēmām, mēs parasti atrodam šo citu klasifikāciju:

  • Šīfera arhitektūra
  • DAO: Datu piekļuves objekts
  • DTO: datu pārsūtīšanas objekts
  • EDA: notikumu virzīta arhitektūra
  • Netiešs aicinājums
  • Kaili priekšmeti
  • Slāņveida programmēšana
  • Peer-to-peer
  • Cauruļvads
  • SOA: Uz pakalpojumu orientēta arhitektūra
  • Trīs līmeņi

Ir arī "Vadītāja skata modelis" kas ir labi pazīstams un izmantots, un ir sadalīts:

  • Modelis / skats / kontrolieris
  • Modelis / skats / prezentētājs
  • Model / View / Presenter kopā ar Model Presenter
  • Modelis / skats / skats-modelis
  • Modelis / skats / prezentētājs ar pasīvo skatu
  • Modelis / skats / prezentētājs ar supervizora kontrolieri

Būt "Controller View Model" ir viens no pazīstamākajiem un ieviestākajiem šodien, tas nav pietiekami, lai korporatīvai lietojumprogrammai nodrošinātu nepieciešamās funkcijas, un tas ir viens no galvenajiem iemesliem, kāpēc Microservices arhitektūra aizstāj Model-View-Controller (MVC).

Mikroservisi: priekšrocības

Mikroservisu arhitektūras priekšrocības

Kad tīmekļa platforma izmanto Microservices arhitektūru, tai parasti ir šādas priekšrocības:

  • Atrisināt viegli katra parādītā problēma vai problēma, kas vērsta uz katru mazo mikropakalpojumu, kas iesaistīts konkrētā situācijā.
  • Lai mazinātu Pakalpojumu vispārējas vai globālas kļūmes, jo, kad mikropakalpojums neizdodas, tas neietekmē pārējos, jo tie ir pilnīgi neatkarīgi.
  • Lai atvieglotu pilnīgu vai specifisku funkciju vai pakalpojumu palaišana un iekļaušana, jo katru Microservice var pievienot vai noņemt un atjaunināt atsevišķi un pakāpeniski.
  • Kļūt labākam piekļuve lietojumprogrammām vai pakalpojumiem, kas izveidoti no visu veidu ierīcēm un platformām.
  • Aumentar platformas daudzpusība, jo Microservices var izplatīt dažādos serveros un rakstīt dažādās valodās.

Mikroservisi: ietvarstruktūras

Atvērtā koda ietvari

ir daudz atvērtā pirmkoda iespējas programmatūras izstrādātāji var izmantot, lai izstrādātu risinājumus, kas ir daļa no Microservices Architectures. Īpaši Java, kas ir šim nolūkam plaši izmantota tehnoloģija, ir:

Mikropakalpojumi: Webs

Tīmekļa piemēri ar Microservices arhitektūru

Starp daudzajām vietnēm, kas nodrošina liela mēroga lietojumprogrammu pakalpojumus un pakāpeniski ieviesušas Microservices arhitektūru, lai uzlabotu savu pakalpojumu un produktu platformas uzturēšanu un mērogojamību, padarot to vienkāršu, efektīvu un ātru, mēs varam pieminēt trīs galvenās nozares Kas viņi ir:

  • Amazone
  • Ebay
  • Netflix

Mikroservisi: secinājums

Secinājums

Ir skaidrs ka Mikroservisi sniedz lielu ieguldījumu mūsdienu tīmekļa programmatūras izstrādēBet tie nozīmē arī daudzu jaunu problēmu risināšanu. Problēmas, kas saistītas ne tikai ar pamatprogrammas mācīšanos un efektīvu darbu, bet arī to, kā šīs jaunās norises tiek papildinātas un ieviestas IT departamentos, kuri galu galā ir tie, kas tos tiešsaistē pārvalda un pārvalda un kuriem ir svarīgs balss. galīgajos lēmumos par katru attīstību. Bet Šī arhitektūra ir šeit, un tā ir palikusi uz ilgu laiku.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.