13 Keretrendszerek kiszolgáló nélküli alkalmazások létrehozásához

Izgatott a szerver nélküli technológia? Szívesen belevág egy új projektbe, de nem tudja, hol kezdje?

Íme egy összefoglaló a legnépszerűbb szerver nélküli keretrendszerekről, amelyeket kézbe vehet!

A kiszolgáló nélküli számítástechnika nagy divat azok körében, akik szeretik azt az ötletet, hogy kevesebbet kell kezelniük, miközben van idejük többet alkotni. És bár a technológia még meglehetősen új, sok fejlesztő és mérnök mindent megtesz annak érdekében, hogy izgalmas megoldásokat hozzon létre a szerver nélküli működés jövője számára.

Biztos vagyok benne, hogy már tudja, a Serverless nem pontosan azt jelenti, hogy nincs szerver. Ez csak kevesebb szervert és több funkciót jelent. És ha megbízható FaaS (Functions as a Service) platformot keres következő projektjéhez, tekintse meg korábbi összeállításunkat a legjobb szerver nélküli számítási platformokról.

Ennek ellenére vessünk egy pillantást a rendelkezésünkre álló keretekre. A dolgot néhány izgalmas projekttel zárjuk, amelyek a Szervernélküli térben készülnek, ezért ügyeljen arra, hogy kitartson ezek mellett!

AWS Amplify

A segítségével gyorsan készíthet méretezhető, szerver nélküli alkalmazásokat webre és mobilra AWS Amplify keretet, és végtelen rugalmasságot kap. Intelligens munkafolyamatok segítségével konfigurálhatja kiszolgáló nélküli háttérrendszereit adatokkal, tárolással, hitelesítéssel és sok mással.

Csatlakoztassa a mobil- és webalkalmazásokat meglévő vagy új AWS-erőforrásokhoz kevesebb kódsorral. Néhány kattintással tárolhat és telepíthet egyoldalas webalkalmazásokat, szerveroldali megjelenített alkalmazásokat és állapotú webhelyeket. Ezenkívül könnyen kezelheti a tartalmat és az alkalmazás felhasználóit.

Az AWS Amplify segít a front-end mobil- és webfejlesztőknek abban, hogy gyorsabban hozzanak létre full-stack alkalmazásokat az AWS-en, és bármikor személyre szabják az alkalmazást. Az Amplify számos webes keretrendszert támogat, például a React, Angular, JavaScript, Vue.js, Next.js stb., valamint olyan mobilplatformokat, mint az iOS, Ionic, Flutter, Android és React Native.

Az alkalmazásfejlesztés felgyorsítása érdekében az Amplify számos UI-komponensével integrálható. Számos funkciót és eszközt kaphat, például hitelesítést, interakciókat, funkciókat, DataStore-t, felhasználókezelést, API-t (REST, GraphQL), Analyticset, AI/ML előrejelzéseket, tárolást, PubSub-ot, push értesítéseket stb. a fejlesztéshez. Emellett felügyelt tárhelyszolgáltatás, PR-előnézetek, CI/CD, egyéni tartományok és telepítési felügyelet áll rendelkezésére.

Félúton

Szerezze be a Node.js kiszolgáló nélküli keretrendszert hagyományos szerveroldali alkalmazások, kis programok, mikroszolgáltatások létrehozásához és kiszolgáló nélküli szolgáltatások létrehozásához Félúton. Gépírással készült, amely IoC befecskendezési mechanizmust használ az alkalmazás logikájának szétválasztására, és természetesebbé teszi a nagy Node.js alkalmazások egyszerűbb fejlesztését.

A Midway használhat expressz, EggJS-t vagy koa-t alapvető keretrendszerként. Olyan alapvető megoldásokat biztosít, mint a GRPC, a Dubbo.js, a RabbitMQ és a Socket.io független használatra. Ezenkívül a Midway Node.js szerver nélküli webes keretrendszerként működik teljes veremű vagy front-end fejlesztők számára.

A Midway segítségével új generációs alkalmazásokat készíthet, amelyek konténeren, virtuális gépen, Alibaba Cloudon, AWS-en és Tencent Cloudon futnak. Könnyedén integrálhatja a Vue-val és a React-tel is. Számos funkciót talál, mint például:

  • Csoportosítható és méretezhető bővítmények
  • Haladó csoport köztes szoftverrel való kompatibilitás és architektúra
  • Leválasztási képesség és alkalmazási rétegezés
  • Következő generációs fejlesztési tapasztalat
  • Támogatja a koa köztes szoftvert és az Egg beépülő modulokat.
  Hogyan blokkoljuk a BitTorrent forgalmat egy hálózaton Linuxon a BitHammer segítségével

Webiny

Szerezzen be mindent, amire szüksége van a szerver nélküli alkalmazások megtervezéséhez, üzembe helyezéséhez és létrehozásához Webiny Szerver nélküli alkalmazáskeret. Különböző felhasználási esetekre tervezték. Módosíthatja az architektúrát, a technológiai halmazt, és alkalmazkodhat szervezete és projektje igényeihez.

Építsen üzleti webhelyeket és alkalmazásokat SEO, útválasztás, előmegjelenítés, biztonság, üzembe helyezés, kötegelés és egyebek alapján. Hozzon létre belső vagy külső API-kat a GraphQL feloldók kibontásával. Ne korlátozza magát egyetlen alkalmazással; különböző adatbázisokat használó alkalmazásokat készíteni. A NodeJS adatbázis-illesztőprogramok segítségével külső adatbázisokkal kommunikálhat.

A Webiny kódcsomagolást, IaC-t, telepítési mechanizmusokat és projektszervezést biztosít. Adja hozzá a terméket a lista elejére, és kínálja fel a SaaS-t az egész világnak. Biztosítsa az alkalmazások egy részét vagy egészét ACL-lel a beépített AWS Cognito és biztonsági keretrendszer segítségével.

Adjon hozzá támogatást az Auth0, OKTA és mások számára. Kapsz fej nélküli CMS-t, oldalkészítőt, űrlapkészítőt, fájlkezelőt és még sok mást. Generáljon alapkódot a CLI beépülő modulok használatával a lambda függvényektől az új GraphQL API-kig.

A Webiny Admin UI több mint harminc különböző React összetevőt tartalmaz. Ezenkívül megkapja a DDoS-védelmet, a CDN-t és az adatok 11 9-es tartósságát. A Webiny időt takarít meg a próbálkozásokban és a kutatásokban.

AWS kehely

Keretrendszert keres szerver nélküli alkalmazások Pythonban történő írásához?

Próbálja meg AWS kehely amely lehetővé teszi alkalmazások létrehozását és üzembe helyezését az AWS Lambda segítségével.

A Chalice parancssori eszközt biztosít az alkalmazás létrehozásához, üzembe helyezéséhez és kezeléséhez, valamint egy dekorátor-alapú API-t, amely integrálható az Amazon S3-hoz, az Amazon API Gateway-hez, az Amazon SQS-hez, az Amazon SNS-hez és további AWS-szolgáltatásokhoz.

Lehetővé teszi REST API-k létrehozását, időszakonként futó feladatok végrehajtását, lambda-függvények összekapcsolását S3 eseménnyel és SQS-sorral, valamint további AWS-erőforrásokat. Közvetlenül a kód megírása után a Chalice lehetővé teszi az alkalmazás gyors futtatását és üzembe helyezését. A Chalice támogatja az AWS Lambda által támogatott Python összes verzióját, beleértve a Python 2.7-et, 3.6-ot, 3.7-et és 3.8-at.

Az alkalmazás üzembe helyezése előtt konfigurálja az összes hitelesítő adatot. De ha már beállította az AWS CLI vagy a boto3 futtatására, hagyja ki ezt. Az üzembe helyezés után bárhol elvégezheti a módosításokat, és újratelepítheti a változtatásokat. Használjon oktatóanyagokat, témákat és API-referenciákat tudásának jobb verziójához.

Zappa

Zappa egy szerver nélküli keretrendszer Python alkalmazások létrehozásához. Megkönnyíti a kiszolgáló nélküli és eseményvezérelt Python-alkalmazások API-átjárón és AWS Lambdán történő felépítését és telepítését. Használja a karbantartás nélküli, a nulla állásidőt és a végtelen méretezést a jelenlegi telepítések minimális költségével.

A telepítések és konfigurációk megkezdése előtt győződjön meg arról, hogy rendelkezik Python 3.x-szel és AWS-fiókkal, valamint megfelelően telepítette az AWS hitelesítőadat-fájlt. A Zappát egyszerűen telepítheti a pip használatával is.

  Alternatív szöveg hozzáadása egy objektumhoz a PowerPointban

A Zappa automatikusan beállítja a telepítési beállításokat. A beállítások megfelelő konfigurálása után egyetlen parancssorban helyezze üzembe az alkalmazást a termelési szakaszba. Használja a sablon parancsot, ha API Gateway CloudFormation sablont szeretne. Telepítse a Zappát egyéni aldomainekre és tartománynevekre SSL-tanúsítványokkal, AWS-tanúsítványkezelő-tanúsítványokkal és Let’s Encrypt tanúsítványokkal.

Engedélyezze a biztonságos végpontokat az API-átjárón, például az API-kulcsot, az IAM-házirendet, az API-átjáró Lambda-engedélyezőit, a Cognito-felhasználókészlet-engedélyezőt és az API-átjáró erőforrás-házirendjét. Ezenkívül beállíthat olyan környezeti változókat, mint a helyi környezet, a távoli AWS környezet és a távoli környezet az S3 fájlon keresztül,

Építészmérnök

Következő generációs AWS felhőalapú, kiszolgáló nélküli infrastruktúra létrehozása, üzembe helyezése és karbantartása teljes helyi, offline munkafolyamatokkal és még sok mással.

Ez egy meglehetősen kifinomult projekt, és utána kell olvasnia a projekt filozófiája és a dokumentációs oldalt mint egész.

Fel

Fel egy olyan keretrendszer, amely segít a kiszolgáló nélküli alkalmazások telepítésében végtelen méretezhetőségi lehetőségekkel. Ezenkívül az Up segítségével statikus webhelyeket, API-kat stb. telepíthet. Mindez rugalmasságot ad ahhoz, hogy azon dolgozzon, ami igazán fontos az Ön számára.

Szerencsére az Up hagyományos HTTP-kiszolgálópéldányokat telepít, így nem kell új protokollt megtanulnia. Ehelyett használja kedvenc keretrendszerét, mint például a Django vagy az Express az induláshoz.

Claudia.js

Claudia.js lehetőséget ad a fejlesztőknek, hogy Node.js-alapú projektjeiket a Lambda-rendszerekhez és az API-hoz tolják. A Claudia automatizálja a telepítési feladatokat, a konfigurációt, és automatikusan beállítja a JavaScript-környezetet a modern fejlesztéshez.

Szóval, mit jelent ez neked? A Claudia használatával percek alatt elindíthatja a mikroszolgáltatások útját. Ennek eredményeként sokkal kevesebbet kell gondolkodnia, és sokkal több ideje van a valódi problémák megoldására összpontosítani.

A Claudia használatának fő okai a következők:

  • Telepítse, frissítse és kezelje példányait egyetlen paranccsal
  • NPM csomagokkal hibátlanul működik
  • Az integrált kazánlemez szerkezet több teret biztosít Önnek, hogy az aktuális feladataira összpontosítson.
  • Verziókezelés, így egyszerre több verzión is dolgozhat
  • Kis tanulási görbe

Fúvókák

Szereted Rubyt?

Akkor lehet, hogy csak élvezed Fúvókák — egy szerver nélküli Ruby-keretrendszer mikroszolgáltatások létrehozásához és telepítéséhez. A keretrendszer tartalmazza az összes szükséges eszközt az API-struktúrák létrehozásához és azok telepítéséhez Lambda.

Fúvókák különálló függvények írására is használható, amelyek segítségével az AWS által biztosított különféle szolgáltatásokat és erőforrásokat összeillesztheti.

A Jets működésének módja az, hogy a keretrendszer átalakítja a meglévő kódot a Lambda és más AWS-szolgáltatások függvényeivé. Ennek eredményeként kihagyhat olyan dolgokat, mint például a telepítés és a kiépítés, hogy több időt tölthessen a funkcionális kód írásával.

Pulumi

Pulumi zökkenőmentes SDK-t biztosít, amely segít szoftverek létrehozásában és telepítésében bármely felhőalapú platformon. Az SDK támogatja a tárolókat, a tárolt szolgáltatásokat, az alapvető infrastruktúrát és a tárolókat.

Bármilyen nyelven írhat kódot; A Pulumi biztosítja és kezeli az erőforrásokat olyan szolgáltatóknál, mint a GCP, AWS, Kubernetes és Azure.

  10 Chrome-bővítmény, amelyek segítenek az írásban

Szerver nélküli

Tudom, mire gondol: „Valakinek olyan szerencséje volt, hogy megszerezte a domain nevet Serverless.com és egyszerűen beváltják a szerencséjüket!”, és el kell mondanom, hogy ez nem így van.

A Serverless Frameworknek van néhány 30 000 sztár a GitHubonígy ez a legnépszerűbb szerver nélküli keretrendszer találhatod.

Szóval mit lehet kezdeni ezzel a kerettel? Mindenekelőtt olyan alkalmazásokat hozhat létre, amelyek mikroszolgáltatásokat használnak az eseményekre stb. való reagálásra. Pl. Az Ön alkalmazásai csak akkor válaszolnak, ha végleges hívás érkezik, és az igények alapján felfelé és lefelé léptet. Ennek eredményeként rengeteg pénzt takaríthat meg, amelyet egyébként a tétlen szolgáltatások karbantartására költenének.

A Framework új eseményvezérelt számítási szolgáltatásokat használ, mint például az AWS Lambda, a Google Cloud Functions és még sok más. Ez egy parancssori eszköz, amely állványzatot, munkafolyamat-automatizálást és bevált gyakorlatokat biztosít a kiszolgáló nélküli architektúra fejlesztéséhez és telepítéséhez. Teljesen bővíthető pluginekkel is.

Sigma

Sigma egy új felhő alapú IDE, amely a szerver nélküli fejlesztés ötlete köré épül. Ez nem csak egy alapszintű szövegszerkesztő néhány divatos funkcióval, hanem egy teljes értékű IDE, amellyel kódot írhat, és azt élő alkalmazásként valós időben közzéteheti.

A Sigma IDE oda-vissza tud beszélni a választott kiszolgáló nélküli (FaaS) platformmal, és csak egy konfigurációs fájl megkövetelésével. Ennek eredményeként végtelen órákat takaríthat meg az egyébként unalmas feladatoktól.

Más eszközökkel ellentétben, amelyek hasonló eredményt próbálnak elérni, a Sigma maga szerver nélküli. Az IDE teljes egészében a böngészőből fut, és néhány funkció kivételével nem igényel háttérszolgáltatást. Konkrétan a háttérrendszerre van szükség a felhasználók hitelesítéséhez és az analitikai adatok gyűjtéséhez.

Ezt érdemes figyelni, és érdemes kipróbálni magad.

Auth0

Ha rajong a kiszolgáló nélküli koncepcióért, akkor valószínűleg hallott már a kiszolgáló nélküli keretrendszerről – arról, amelyet a cikkben korábban említettünk.

Auth0 Összetette erőfeszítéseit az Auth0 webfeladatok létrehozására, amely hatékony kiegészítő a Serverless Framework összes felhasználója számára. A projekt a Webtask nevet viseli, és itt találja a honlapot.

Lényegében a Webtask használható alkalmazásokat hozhat létre anélkül, hogy aggódnia kellene az infrastruktúrája miatt kompatibilitás. Írjon szerveroldali logikát, és telepítse az összes funkciót a Webtask által biztosított CLI segítségével. Ezután a HTTP protokoll használatával navigálhat a háttérben.

Frissítés: A Webtask webhely azóta leállt.

Szerver nélküli példák

A bejegyzésben korábban beszéltünk a szerver nélküli keretrendszerről, és alapvetően ez egy nyomon követési forrás, amely bemutatja a sok különböző a Serverless Framework használati esetei.

Annak ellenére, hogy ezek a példák egy adott keretrendszerhez vannak zárva, továbbra is élvezheti az új kiszolgáló nélküli koncepciók megismerésének folyamatát.

A példák olyan platformokhoz érhetők el, mint az AWS, Azure, Kubeless, Google Cloud és OpenWhisk. Ezenkívül hat különböző nyelvet támogat: nodeJS, Python, Go, Java, PHP és Swift.

Nézz meg néhány ilyen kedvencet, mint például Twitter Joke Bot és OAuth Dropbox API.

Ha gyakorlati tanulásra vágysz, nézd meg ezt online tanfolyam.