A Backend-as-a-Service (BaaS) olyan platformokra utal, amelyek háttérszolgáltatásokat nyújtanak szoftveralkalmazások számára, például adattárolást, elemzéseket, értesítéseket, valós idejű előfizetéseket és hitelesítést. A BaaS-szolgáltatók csökkentik az alkalmazás fejlesztéséhez szükséges időt, mivel így nincs szükség a háttérrendszer létrehozására a semmiből.
Néhány népszerű BaaS-szolgáltató, amely támogatja a React alkalmazásokat, az AWS Amplify, a Firebase és a SupaBase.
AWS Amplify
Az AWS-szolgáltatások használata bonyolult lehet felhőhasználat nélkül. A 2017-ben elindított AWS Amplify egy nyílt forráskódú könyvtár, amely leegyszerűsíti az AWS-szolgáltatásokkal való interakciót és az alkalmazásba való integrálását.
Többek között olyan szolgáltatásokat nyújt, mint a tárolás, a hitelesítés, a GraphQL, a REST API-k és a push értesítések. Ezenkívül egyszerű módot biztosít az AWS-erőforrások, például a Cognito, a DynamoDB és az ElasticSearch hozzáadására egy alkalmazáshoz az AWS-konzol használata nélkül. Az Amplify eléréséhez használhatja a CLI-t vagy az Admin UI-t.
Az AWS Amplify főbb jellemzői
- Az AWS Amplify számos keretrendszerrel és nyelvvel működik. Webes alkalmazások esetén támogatja népszerű JavaScript-keretrendszerek és -könyvtárak mint a React, Angular és Vue. Támogatja az iOS és az Android rendszert is.
- Az Amplify integrálja az Amazon Cognito-t, hogy támogassa az e-mail-/jelszavas hitelesítést, a közösségi hitelesítést olyan szolgáltatókkal, mint a Facebook és az Amazon, valamint a többtényezős hitelesítést.
- Az Amplify segítségével GraphQL és REST API-kat adhat hozzá az alkalmazáshoz. Ezeket az API-kat használhatja egy adatforrásból, például a DynamoDB-ből származó adatok eléréséhez.
- Az Amplify segítségével az S3 segítségével tárolhatja és kezelheti a médiafájlokat az eszközön és a felhőben.
- Az Amplify CLI lehetővé teszi lambda-függvények létrehozását és üzembe helyezését. A lambda függvény a szerver nélküli funkció amely lehetővé teszi a kód futtatását kiszolgáló kiépítése nélkül. A lambda-funkciók gyakori felhasználási esetei közé tartozik az SMS-értesítések küldése, amikor egy esemény elindul, e-mailek küldése és a képkezelés, például miniatűrök létrehozása. További információért tekintse meg az AWS-dokumentumokat Lambda funkciók gyakori használati esetei.
- Elkezdeni olcsó. Elkezdheti az alkalmazás létrehozását az ingyenes rétegben, amely az Amplify legtöbb funkcióját kínálja. Az ingyenes időszak lejárta után fizethet a használt speciális szolgáltatásokért.
- Az Amplify csökkenti a szoftveralkalmazások piacra kerülési idejét, mivel nem kell a háttérből kódolnia.
Az AWS Amplify csak az AWS felhőt célozza meg. A Google Cloud esetében érdemes megfontolni a Firebase alkalmazást.
Firebase
A Firebase egy Google Cloudra épülő BaaS platform, amely felügyelt háttérplatformot biztosít webes és mobilalkalmazásokhoz. A Firebase olyan termékeket kínál, amelyek segítenek a fejlesztőknek a háttér-infrastruktúra felépítésében, az alkalmazás kiadásában és figyelésében, valamint a felhasználókkal való kapcsolattartásban.
A Firebase legfontosabb jellemzői
- A Firebase támogatja az iOS, a web és az Android rendszerrel való integrációt.
- A Firebase rendelkezik egy Cloud Firestore adatbázissal, amely egy NoSQL-adatbázis, amelyet az alkalmazások adatainak tárolására használhat. A Firebase egy valós idejű adatbázist is biztosít, amely lehetővé teszi az adatok valós időben történő tárolását és szinkronizálását a felhasználók között.
- A Firebase lehetővé teszi, hogy bővítményeket adjon az alkalmazáshoz. A bővítmények előre csomagolt kódcsomagok, amelyek további funkciókat adnak az alkalmazásokhoz. Bővítményre példa a Search with Algolia, egy olyan csomag, amely lehetővé teszi a teljes szöveges keresést a felhő Firestore adatbázisban az Algolia használatával. További bővítményeket láthat a bővítési piactér.
- Funkciókat adhat alkalmazásához, ha a Firebase-t integrálja más eszközökkel, például a Google Ads-szel, a Google Play-vel, a Jira-val és a Slack-kel.
- A Firebase a Google Cloudba épült, amely lehetővé teszi az alkalmazás egyszerű méretezését.
- A Spark-terv ingyenes, így a fejlesztők könnyedén elkezdhetik a Firebase használatát.
- A Firebase hitelesítés A szolgáltatás támogatja a felhasználói hitelesítést e-mail-címek és jelszavak, telefonszámok és közösségi hitelesítési szolgáltatók, például a Twitter és a GitHub használatával.
- A Firebase-termékek, például a crashlytics, a teljesítményfigyelés, a Google Analytics és a tesztlabor segít nyomon követni alkalmazása teljesítményét.
Amint láthatja, a Firebase nagyszerű funkciókkal rendelkezik, azonban nem nyílt forráskódú, és csak a Google Cloudon használható. Ha nyílt forráskódú alternatívát szeretne, próbálja ki a Supabase-t.
Supabase
A Supabase egy olyan platform, amely lehetővé teszi a fejlesztők számára, hogy gyorsan háttérrendszert állítsanak be alkalmazásaikhoz. A Supabase-en létrehozott minden projekt egy Postgres adatbázis, amely 100%-ban hordozható, ami leegyszerűsíti a Supabase-re és onnan történő migrációt. Az adatbázis valós idejű engedélyezve van, és Ön feliratkozhat az adatbázis frissítéseire, és reagálhat azokra. A Supabase által nyújtott egyéb szolgáltatások az élfunkciók, a hitelesítés és az automatikusan generált API-k.
A Supabase legfontosabb jellemzői
- A Supabase teljes körű Postgres adatbázist biztosít. Az adatbázis hordozható, és beépített hitelesítéssel rendelkezik, amellyel a felhasználói hozzáférést szabályozhatja.
- Számos hitelesítési módszert kínál, például közösségi bejelentkezést a Google-lal, a Facebookkal és a Twitterrel, az e-mail-/jelszavas hitelesítést és egy beépített felhasználókezelő rendszert, amelyhez API-n keresztül férhet hozzá.
- A Supabase támogatja az élfunkciókat, amelyek kiszolgáló nélküli funkciók, amelyek a felhasználók közelében futnak szerte a világon. Az élfüggvények használatával csökkentheti a késleltetést és növelheti a kódvégrehajtási sebességet.
- Támogatja a valós idejű frissítéseket is, amelyek lehetővé teszik a Postgres adatbázisban lévő események meghallgatását.
- A Supabase és a Firebase hasonló szolgáltatásokat kínál, és a fő különbség közöttük az, hogy a Supabase egy PostgreSQL adatbázisra épül, egy relációs adatbázisra, míg a Firebase egy NoSQL adatbázisra épül.
- A Supabase árazás a tárolt adatok mennyiségén alapul, ami kiszámíthatóvá teszi a számlákat. Az ingyenes csomag már akár 500 MB adatbázist és 1 GB fájltárhelyet biztosít, és tökéletes mellékprojektekhez. Ha több tárhelyre van szüksége, a következő árszint havi 25 USD.
- Lekérdezhet egy meglévő PostgreSQL adatbázist a GraphQL segítségével.
Melyik BaaS platformot érdemes használni?
A választott platform a projekt igényeitől függ, amelyen dolgozik. A Firebase nagyszerű a nem relációs adatokhoz, mivel NoSQL-adatbázist használ, míg a Supabase jó választás, ha relációs adatbázist szeretne használni. Az Amplify lehetővé teszi a DynamoDB vagy S3 által támogatott NoSQL adatbázis létrehozását, de lambda függvényt is használhatunk a relációs adatbázishoz való csatlakozáshoz.
Ezenkívül, ha GraphQL API-kat szeretne használni, válassza az Amplify vagy a Supabase lehetőséget, mivel a Firebase nem támogatja azt.
Érdemes fontolóra vennie meglévő felhőszolgáltatóját is, mivel könnyebben használhatja a már használt szolgáltatóra épített platformot. Ha például AWS-t használ, akkor előnyben részesítheti az Amplify vagy a Firebase szolgáltatást, ha a Google Cloud szolgáltatást használja. A Supabase jó lehetőség, ha nem szeretne egy adott felhőszolgáltatóhoz kötni.
Hogyan segítenek a BaaS-szolgáltatók a gyorsabb szállításban
Eddig megismerte az Amplify, a Firebase és a Supabase szolgáltatásait, valamint néhány olyan tényezőt, amelyet figyelembe kell venni a BaaS-szolgáltató kiválasztásakor. A választott platformtól függetlenül a BaaS segít megtakarítani a fejlesztési időt. Az adatbázis konfigurálása, hitelesítési rendszer felépítése, elemzési és egyéb háttérszolgáltatások beállítása helyett a tervezésre és a kezelőfelületre összpontosíthat.