Jak používat Jamstack se serverovou a podnikovou aplikací

Ahoj všichni, vítejte u posledního úvodního článku série JAMstack, Jamstack pro všechny. Jsem potěšen a potěšen lajky, komentáři a zpětnou vazbou, které jsem obdržel z předchozích článků.

Pokud jste v seriálu noví, zde jsou odkazy na předchozí články. Doufám, že si je užijete.

  • Úvod do Jamstacku
  • Jak se JAMstack liší od tradičních monolitických aplikací?
  • Co jsou generátory statických stránek a jak je vybrat?
  • Jak mě JAMstack inspiroval k vytvoření DemoLabu

Neváhejte se vyjádřit, pokud máte dotazy nebo body k diskusi. Také mě můžete sledovat na Twitteru @tapasadhikary pro jakékoli diskuse a aktualizace.

S veškerým zázemím, které jsme doposud vytvořili, je nyní čas zjistit, zda Jamstack je skutečný serverless, jak se zdálo. Jak využijeme koncept Jamstack ve složitých podnikových aplikacích a mimo blogovací platformu?

Trocha rekapitulace

Jamstack je moderní architektura pro vývoj webových aplikací založená na client-side JavaScript, reusable API a prebuilt Značky. Je zcela odlišný od všech ostatních technologických zásobníků, jako je LAMP , MEAN nebo MERN , kde Jamstack je spíše koncept než technologie.

Viděli jsme, že předběžné vytvoření značek poskytuje superschopnost k rychlejšímu zrychlení aplikací nebo webových stránek. Obsluhování prebuilt značky z CDN infrastruktura se stará o bleskově rychlý přístup, bezpečnost a náklady.

Jsem si jistý, že si pamatujete toto srovnání na vysoké úrovni mezi monolitickou aplikací a aplikací Jamstacked,

Tradiční monolitický pracovní postup

Pracovní postup Jamstack

Také jsme učinili prohlášení jako,

Chci, aby moje aplikace byla dynamická

Doposud byl náš způsob chápání o vytváření něčeho statického pomocí generátorů statických stránek, hostování souborů na CDN a poskytování služeb koncovým uživatelům. Je přijatelné pro web s portfoliem, statický web, blogovací aplikaci atd.

Ale co když to vaše aplikace potřebuje,

  • Naplánovat nebo odeslat e-maily?
  • Provést ověření a autorizaci?
  • Provádět platby a platby?
  • Spravovat služby zákazníkům pomocí chatovacího robota?
  • Provádět vyhledávání, komentáře uživatelů a mnoho dalších interaktivních věcí?

Co když vaše aplikace potřebuje Dynamic Content ? Potřebujete programování na straně serveru pro psaní, správu a údržbu? Zdá se, že potřebujete napsat vlastní back-endy. Ale Jamstack je bez serveru, že?

Co je k dispozici v rozhraní front-end?

Páni! Spousta otázek k zodpovězení. Předtím se podívejme, co je dnes dostupné ve front-endu.

Pamatujete si A z JAM v Jamstack ? Ano, je to pro API . Zde jsou některé z mnoha služeb API, které jsou dnes k dispozici ve front-endu, aniž byste si museli dělat starosti s psaním a správou jakýchkoli vlastních back-endů.

  • 🔑 Ověření
    • Okta
    • Auth0
    • Netlify Identity
  • 💳 Platba
    • Proužek
    • Braintree
    • Pádlo
  • 📧 E-mail
    • Poštovní pistole
    • Poštovní razítko
  • 🧝‍♂️ Zákaznické služby
    • Interkom
  • 🔎 Hledat
    • Algolia
  • ⌨️ Komentář
    • Disqus
  • 📹 Správa obrázků a videí
    • Oblačno
  • 📋 Zpracování formulářů
    • Typ
  • 📦 Headless CMS
    • Strpi
    • Spokojný

Tento seznam může pokračovat dál a dál. Ale máš nápad. Existuje spousta, která vám pomohou s API pro vytvoření správného Jamstack řešení.

Ale počkat, já chci svou funkci, logiku a databázi!

Jak jsem řekl, mnoho funkcí je dnes dostupných pro front-end a my nemusíme psát vlastní back-endy. Nebude to však řešit 100 % případů použití. Možná budete chtít mít své vlastní funkce, logiku a možná budete potřebovat i databáze. Co s tím?

V Jamstack ,

Ano, to je pravda a všichni to musíme plně pochopit. V Jamstacku však bez serveru neznamená 'Žádný server'. Znamená to pouze, že vy jako vývojář, tým a organizace nespravujete a neudržujete tyto servery.

Být Server Less znamená, že máte svobodu získat dostupné služby, kde můžete využít infrastrukturu, platformu, software, funkce atd. Pokud požadujete vlastní funkce, databáze, můžete použít,

  • Infrastruktura jako služba (IaaS)
  • Platforma jako služba (PaaS)
  • Software jako služba (SaaS)
  • Funkce jako služba (FaaS)
  • Databáze jako služba (DaaS)
  • Back-end jako služba (BaaS)

Se všemi těmito požadovanými službami, které vás podporují, můžete pokračovat ve filozofii Jamstack kde prebuilt značky (šablona + obsah) lze obsluhovat z CDN a služeb prostřednictvím rozhraní API.

Využití těchto služeb od různých dodavatelů, jako jsou Amazon Web Services (Aws), Google Cloud Platform (GCP), Microsoft Azure, Netlify atd., bude také nákladově efektivní.

Obrázek níže ukazuje, že prohlížeč spouští prebuilt značky z CDN a back-endové služby, funkce a dokonce i databáze mohou být v cloudu.

Zde je další příklad prodejní aplikace. Představte si, prebuilt markup je načten z CDN a spuštěn v prohlížeči. Dále používá kteroukoli z dostupných služeb API pro ověřování. Nakonec využívá různé databáze z cloudu k vyhledávání zákazníků a získávání dat o prodeji.

Zde je seznam databází, které jsou dostupné jako služba,

  • Fauna Db
  • Amazon Aurora
  • Amazon DynamoDB
  • Azure Cosmos
  • Google Cloud Firestore
  • Google Spanner

Nezapomeňte si vyzkoušet bezserverový framework, abyste mohli většinu těchto služeb používat na různých platformách s vývojem bez serverů s nulovým třením .

Závěrečné poznámky

Jamstack je vynikající architektonický koncept. Na závěr bych rád zopakoval charakteristiky Jamstack ještě jednou,

  • Celý projekt na CDN.
  • Všechno žije v Gitu.
  • Moderní stavební nástroje.
  • Automatické sestavení
  • Automatické rozmístění atomů
  • Okamžité zrušení platnosti mezipaměti
  • Prakticky bez serveru

Můžeme použít Jamstack koncept nad rámec statického webu. Dnes mnoho podnikových aplikací využívá tento koncept zcela nebo částečně. Pokud vaše aplikace není Jamstack a funguje dobře, možná ji nebudete chtít přesunout do Jamstack vůbec.

Vyhodnoťte svou žádost pomocí tří základních pilířů, které jsme viděli dříve. Jamstack je vynikající řešení, jak toho dosáhnout, ale v případě potřeby musíte věci vynutit.

Moje oblíbené zdroje Jamstack

Je jich dost. Zde je několik, které jsem přidal do záložek a považuji je za své oblíbené,

  • Jamstack – oficiální webové stránky
  • Jamstack v roce 2020 – průvodce postupy
  • Bílá kniha od Netlify vysvětlující JAMstack pro Enterprise
  • Koncepty programování bez serveru s příklady
  • Databáze s Jamstackem? Myšlenky s příklady
  • Problém s JAMstack
  • Zaseknutý

Co bude dál?

Děkuji, že se s tím poflakujete. Doufám, že se mi zatím podařilo většinu z toho vyjádřit touto sérií Jamstack.

Dále uvidíme články, návody na vytváření aplikací a řešení Jamstack.

Do té doby se prosím podívejte do demoLab kód aplikace, což je open-source aplikace Jamstack. Mějte se dobře, zůstaňte zdraví 🙏!

https://github.com/atapas/demolab

Pokud vám to pomohlo, dejte like/sdílejte, aby se to dostalo i k ostatním. Chcete-li dostávat e-mailová upozornění na nejnovější příspěvky, přihlaste se k odběru na můj blog kliknutím na tlačítko Odebírat.

Sledujte mě na Twitteru @tapasadhikary pro aktualizace a diskuse.