Odebírat podcast.

7 výhod, proč při vývoji aplikace využít microservices!

Hledáte způsob, jak jednodušeji vyvíjet, spravovat i upgradovat webové nebo mobilní aplikace? Přáli byste si mít stabilnější, bezpečnější a provozně levnější aplikace? Chcete efektivněji využívat potřebné technologie? Vše to umožní využití microservices. Jak na to? Poslechněte si nebo přečtěte náš 10. podcast.

Buďte vždy o krok před konkurencí, získejte přístup k celé sérii podcastů. Přihlaste se k odběru našeho newsletteru.

Nové technologické okénko je zde

Tentokrát si v našem technologickém okénku povídal CEO Pixape Radek Semančík a programátoři Vojtěch Seidler a Josef Štěpánek o microservices a všech výhodách, které přináší.

Co jsou microservices?

Microservices si můžete představit jako zcela oddělené bloky nebo sekce nějaké aplikace, které mají určitou funkci. Z těchto microservices je pak poskládaná celá aplikace. Tyto bloky navíc žijí vlastním životem, tj. mají vše, co potřebují ke svému chodu (i svá data), a komunikují spolu pouze pomocí nějakého bridge – nejčastěji REST API. Díky tomu se navzájem neovlivňují, mohou být napsány v rozdílných programovacích jazycích, frameworcích a mohou používat různé technologie. Jaké výhody to přináší?

Jakých 7 výhod má použití microservices?

  1. Jednodušší vývoj a ladění aplikace – Protože s pomocí microservices nevytváříte monolitickou aplikaci, ale vždy jen její menší části, které mají přesně danou funkci, je kód přehlednější. Navíc, když něco pokazíte, ovlivní to pouze určitou funkci, tedy rychleji naleznete chybu a kód vyladíte.
     
  2. Jednodušší koordinace týmů při vývoji – K vývoji každé microservice můžete přidělit určité lidi, tým. Je zde tedy menší riziko konfliktů mezi programátory, kteří si navzájem budou i méně sahat do kódu.
     
  3. Stabilnější aplikace – Protože jsou od sebe microservices oddělené, pokud nastane problém, ovlivní to pouze určitou microservice, nikoliv celou aplikaci. Aplikace složené s microservices jsou tak stabilnější.
     
  4. Jednodušší a levnější správa aplikací – Když budete mít monolitickou aplikaci a budete chtít upgradovat například její framework nebo programovací jazyk, musíte upravit celou aplikaci. Po této úpravě pak je vždy třeba i celou aplikaci otestovat. To vše použití microservices zjednoduší. Při opravě nebo upgradování jedné microservice nebudete muset upravit další části aplikace ani je nijak neovlivníte. Aplikace tedy jako celek nespadne a ani nebudete muset další části testovat. Tím výrazně ušetříte čas i peníze na opravy a upgradování.
     
  5. Efektivnější využívání technologií – Protože jsou microservices nezávislé bloky, které spolu komunikují přes REST API, lze pro každou použít zcela jinou technologii. Pro danou funkcionalitu proto můžete použít takovou technologii (programovací jazyk a jeho framework), která je pro ni nejvhodnější. Zároveň tím můžete uspořit. Pokud je zde nějaká funkcionalita náročná na výkon, můžete pro ni použít nějakou dražší technologii, ale na zbytek už jen nějaké levnější, ale dostatečné řešení, např. PHP.
     
  6. Levnější a méně náročný provoz aplikace – V každé aplikaci jsou některé části využívané více než jiné. Pokud máte ale vše v monolitické aplikaci, jakýkoliv dotaz aktivuje vždy celou aplikaci. Aplikace je proto mnohem náročnější na výkon.

    U microservices to neplatí. Každý dotaz aktivuje jen tu microservice, která ho zpracovává. Každá microservice pak běží na separátní instanci, například na separátním virtuálním serveru, který můžete podle jejího vytížení buď naddimenzovat, anebo naopak poddimenzovat. Tímto tedy snižujete výkonnostní náročnost celé aplikace. Z toho plynou i nižší náklady na provoz.
     
  7. Bezpečnější provoz aplikace – Zajistit bezpečnost citlivých dat v monolitické robustní aplikaci je mnohem komplikovanější než v případě jedné microservice. Zároveň při úpravě čehokoliv dalšího v aplikaci nikdy neohrozíte bezpečnost a funkčnost této funkce. To se hodí dvojnásob, pokud tuto funkci využívají i další projekty. Krásný příklad takového využití je třeba funkce autorizace uživatelů. Zde je totiž mnohem větší důraz na bezpečnost i stabilitu funkce.
     

Jsou nějaké nevýhody microservices?

Nevýhody zde prakticky nejsou. Důvod, proč se doposud microservices tolik nepoužívají, je fakt, že je tato architektura aplikace stále relativně nová a její nasazování je náročnější, ačkoliv sám vývoj může být s jejím použitím i rychlejší. Lépe totiž najdete a odladíte jednotlivé problémy.

Některé firmy však již začínají microservices používat pro části svých aplikací. Je to proto, že zjistily, že některé části jejich aplikací jsou až příliš náročné na výkon a ty části od celku oddělují. Zpětně je toto oddělení ale mnohem náročnější.

Pro vhodné nasazení microservices je třeba zkušeností

Nasazení microservices vás zpočátku staví před složitou otázku. Musíte totiž nejprve určit, z jaké funkce udělat microservice a co nechat v core projektu. Jenže k tomu musíte být už od počátku schopni určit, jaké funkcionality budou opravdu náročné na výkon nebo na zpracování, tj. i náchylné na chybovost. Takové části se pak rozhodně vyplatí oddělit, snížíte tím výkonnostní náročnost aplikace a zajistíte její stabilitu a rychlejší vývoj a ladění. K takovému rozhodnutí je však třeba zkušenost.

Chcete vědět více o microservices, nebo potřebujete rovnou vývojářský tým s letitými zkušenostmi? Ozvěte se nám.

Buďte vždy o krok před konkurencí

Odebírejte naše podcasty a objevte, proč nejčastěji aplikace neuspějí a jak tomu zabránit. Naservírujeme vám nejnovější přístupy i technologie, díky kterým budou vaše aplikace oblíbenější, ziskovější a budete s nimi mít méně starostí. Sledujte nás a uspějte na poli aplikací.


Buďte vždy o krok před konkurencí

Odebírejte naše podcasty a objevte, proč nejčastěji aplikace neuspějí a jak tomu zabránit. Naservírujeme vám nejnovější přístupy i technologie, díky kterým budou vaše aplikace oblíbenější, ziskovější a budete s nimi mít méně starostí. Sledujte nás a uspějte na poli aplikací.


Mohlo by se Vám líbit.

Klientský portál pro vodárenské společnosti

V reakci na novou legislativu v energetice, která klade významné požadavky na pravidelné informování o spotřebě tepla a teplé vody, přinášíme klientský portál navržený speciálně pro energetické společnosti.

Chci vědět víc

Zákaznický portál pro leasingové společnosti

Poznejte náš portál pro leasingové společnosti a půjčovny strojů a aut, který zvyšuje efektivitu, zlepšuje zákaznickou spokojenost a otevírá nové obchodní příležitosti.

Chci vědět víc

Klientský portál pro dealery v zemědělské, komunální a stavební technice

Správa objednávek a komunikace s dealery mohou být náročné, pokud nemáte správné nástroje. Náš klientský portál pro dealery je navržen tak, aby zjednodušil a zefektivnil tyto procesy.

Chci vědět víc

B2B portál pro výrobní firmy a velkoobchody

Objevte, jak náš B2B portál pro výrobní firmy může zefektivnit vaše obchodní procesy a posílit vztahy se zákazníky. Nabízíme vynikající poprodejní servis, automatizované notifikace, rychlé řešení reklamací a personalizované služby.

Chci vědět víc

Klientský portál pro energetické společnosti: reakce na novelu v energetice

V reakci na novou legislativu v energetice, která klade významné požadavky na pravidelné informování o spotřebě tepla a teplé vody, přinášíme klientský portál navržený speciálně pro energetické společnosti.

Chci vědět víc