서비스형 백엔드

Backend as a service

서비스형 백엔드([1][2][3]BaaS)는 모바일 백엔드(MBaaS)라고도 하며, 앱 및 모바일 앱 개발자에게 프론트엔드 애플리케이션에 백엔드를 쉽게 구축할 수 있는 방법을 제공하기 위한 서비스입니다. 사용 가능한 기능에는 사용자 관리, 푸시 알림소셜 네트워킹 서비스와의 통합이 포함됩니다.[4] 이러한 서비스는 사용자 지정 소프트웨어 개발 키트(SDK) 및 응용 프로그램 프로그래밍 인터페이스(API)를 사용하여 제공됩니다. BaaS는 클라우드 컴퓨팅 분야에서 비교적 최근에 개발된 것으로,[5] 대부분의 BaaS 스타트업은 2011년 이후부터 시작되었습니다.[6][7][8] 가장 인기 있는 서비스 제공업체로는 AWS Amplify와 Firebase가 있습니다.

목적

웹 및 모바일 앱에는 알림 서비스, 소셜 네트워크와의 통합 및 클라우드 스토리지를 포함한 백엔드의 유사한 기능 세트가 필요합니다.[9][10] 이러한 각 서비스에는 개별적으로 앱에 통합해야 하는 고유한 API가 있으며, 이 프로세스는 앱 개발자에게 시간이 많이 걸리고 복잡할 수 있습니다.[11] BaaS 공급자는 애플리케이션의 프론트 엔드와 다양한 클라우드 기반 백엔드 사이에 통일된 APISDK를 통해 브리지를 형성합니다.[3]

백엔드 데이터를 일관적으로 관리하는 방법을 제공한다는 것은 개발자가 앱이 액세스하는 데 필요한 각 서비스에 대해 자신의 백엔드를 재개발할 필요가 없으므로 [10]시간과 비용을 모두 절약할 수 있다는 것을 의미합니다.[11][12]

서버리스 컴퓨팅, SaaS(Software as a Service), IaaS(Infrastructure as a Service), PaaS(Platform as a Service) 등 다른 클라우드 컴퓨팅 비즈니스 모델과 유사하지만, BaaS는 특히 웹 및 모바일 앱 개발자의 클라우드 컴퓨팅 요구사항을 해결하기 위해 앱을 클라우드 서비스에 연결하는 통합된 수단을 제공한다는 점에서 다른 서비스와 구별됩니다.[13][14]

특징들

BaaS 제공업체는 다양한 기능과 백엔드 도구를 제공합니다.[15] 가장 일반적인 기능 중 일부는 다음과 같습니다.

  • 데이터베이스 관리. 대부분의 BaaS 솔루션은 애플리케이션에 SQL 및/또는 NoSQL 데이터베이스 관리 서비스를 제공합니다.[16] 개발자는 데이터베이스를 직접 배포하고 관리하지 않고도 앱 데이터를 저장할 수 있습니다. BaaS는 일반적으로 프론트엔드가 데이터베이스와 상호 작용할 수 있도록 클라이언트 SDK, RESTGraphQL API를 제공합니다.
  • 파일 저장. BaaS 공급자는 미디어 파일, 사용자 업로드 및 기타 바이너리 데이터를 위한 스토리지 솔루션을 제공하는 경우가 많습니다. 애플리케이션은 제공된 SDKAPI를 통해 파일을 업로드, 다운로드, 삭제할 수 있습니다.
  • 인증승인. 일부 BaaS는 개발자가 앱 사용자를 쉽게 관리할 수 있는 인증 및 권한 부여 서비스를 제공합니다.[16] 여기에는 사용자 가입, 로그인, 비밀번호 재설정, OAuth를 통한 소셜 미디어 로그인 통합, 사용자 그룹 및 권한 관리 등이 포함됩니다.
  • 알림 서비스. 파이어베이스, AWS앰프 등 일부 BaaS 제공업체는 사용자에게 맞춤형 이메일을 보내고 모바일 플랫폼에서 네이티브 알림을 푸시할 수 있는 알림 서비스를 제공합니다.[17][18] 이는 메시지, 경고 및 알림을 보내야 하는 응용 프로그램에 특히 유용합니다.
  • 클라우드 기능. 일부 BaaS는 개발자가 서버리스 기능을 배포하고 실행할 수 있도록 합니다. 일반적으로 이 기능은 상태 비저장 상태이며 HTTP 요청, SDK 호출, 백그라운드 서버 이벤트, 클라우드 예약 실행 등 다양한 방법으로 트리거할 수 있습니다.[19][20] 다른 제공자들은 다른 언어들에 대한 런타임 지원을 제공하며, 인기 있는 언어들 중 일부는 자바스크립트/타입스크립트(Node.js, Deno), 파이썬, 자바/코틀린(Java/Kotlin)입니다.[19][20][21] 클라우드 기능은 개발자가 기존의 REST API 백엔드 프레임워크와 유사한 방식으로 앱에 대한 사용자 지정 기능을 작성할 수 있도록 하여 BaaS의 잠재력과 유연성을 확장합니다.[22]
  • 사용 분석. 애플리케이션 사용에 대한 분석 데이터는 종종 BaaS에 포함됩니다. 이를 통해 개발자는 사용자 행동을 모니터링하고 마케팅 전략과 성능 최적화에서 상응하는 결정을 내릴 수 있습니다.[23][24]
  • UI 디자인. AWS Amplify 및 Backendless와 같은 일부 BaaS 제공업체는 개발자가 웹 및 모바일 앱의 프론트엔드 UI를 설계하는 데 도움이 되는 사용자 인터페이스 설계 도구를 제공합니다.[25][26] 이는 소규모 팀과 개인 개발자에게 유용할 수 있지만, UI 설계 지원은 백엔드 인프라의 범위를 넘어서기 때문에 BaaS에서는 일반적이지 않을 수 있습니다.
  • 다른 분들. 다양한 BaaS 제공업체는 고유한 기능을 제공합니다. 몇 가지 예를 들어, Firebase는 사전 패키지화된 확장 기능을 지원하여 다른 플랫폼과의 기능 및 통합 기능을 제공합니다.[27] 앱라이트에는 아바타와 현지화 서비스가 있어 아이콘과 사용자 위치를 관리할 수 있습니다.[28][29] Back4AppDevOps를 지원하는 자율 AI 에이전트를 제공합니다.[30]

서비스 공급자

BaaS 제공업체는 자바스크립트(웹 앱용), 플러터(Flutter), 자바/코틀린(안드로이드 앱용), 스위프트/오브젝트-C(iOS/MacOS/WatchOS/TvOS 앱용), .NET(윈도우용) 등 다양한 기술 스택을 가진 여러 플랫폼에서 앱 개발에 사용할 수 있는 SDKAPI를 제공하는 광범위한 초점을 가지고 있습니다. BaaS 제공업체도 다양한 유형으로 제공되어 다양한 요구 사항을 가진 개발자에게 적합합니다.

클라우드 기반의 BaaS

대부분의 BaaS 제공업체는 클라우드 서버에 백엔드 플랫폼을 호스팅합니다.[31] 또한 플랫폼의 인프라, 보안 및 확장성을 관리합니다. 개발자는 웹 인터페이스 또는 제공된 API를 통해 백엔드 서비스에 액세스할 수 있습니다.[16] 클라우드 기반 BaaS의 예로는 Firebase(Google Cloud Platform에서 호스팅됨), AWS Amplify(Amazon Web Services에서 호스팅됨), Microsoft Azure Mobile Apps(Microsoft Azure에서 호스팅됨) 등이 있습니다.

자체 주최 BaaS

자체 호스팅된 BaaS를 사용하면 개발자가 자체 서버에서 백엔드를 호스팅할 수 있으므로 종종 마이그레이션이 더 어려운 클라우드 기반 BaaS에 비해 사용자 지정에 더 많은 유연성과 잠재력을 제공할 수 있습니다. 그러나 개발자는 서버의 인프라, 보안 및 확장성 관리도 담당합니다.[16][31] 자체 호스팅된 BaaS 중 일부는 오픈 소스입니다. 예를 들어 Supabase는 "오픈 소스 Firebase 대안"으로 기능하며,[32] Firebase와 비교하여 커뮤니티 지원 프로젝트로서의 유연성과 개방성을 강조합니다. SupabaseAppwriteStrapi와 같은 다른 공급자는 오픈 소스이며 셀프 호스팅을 지원하지만 유료 클라우드 기반 호스팅 서비스도 제공합니다.

모바일 BaaS

MBaaS(Mobile Backend as a Service)는 모바일 시스템에 배치된 애플리케이션을 위한 BaaS의 한 유형입니다. 일부 참조는 BaaS를 위해 MBaaS를 상호 교환하여 사용하지만, BaaS는 웹 앱 및 데스크톱 앱과 같은 보다 다양한 지원을 제공할 수 있습니다.[33][34] MBaaS의 예로는 백엔드리스와 마이크로소프트 애저 모바일 앱이 있습니다.

비즈니스모델

BaaS 공급자는 종종 무료 프리미엄 모델을 사용하여 다양한 방식으로 서비스에서 수익을 창출합니다. 이 모델에 따르면 클라이언트는 매월 일정 수의 무료 활성 사용자 또는 API 호출을 받고, 이 한도를 초과하는 사용자 또는 호출에 대해 요금을 지불합니다. 또는 고객은 매월 더 많은 수의 통화 또는 활성 사용자를 허용하는 패키지에 대해 설정된 요금을 지불할 수 있습니다.[10] 가격을 더 예측 가능하게 만드는 정액 요금제도 있습니다. 일부 공급자는 무료 요금제 제공 내에서 무제한 API 호출을 제공합니다.[35] 많은 BaaS 공급자가 사용해 온 또 다른 비즈니스 모델은 PAYG(pay as you go)로,[36] 개발자의 데이터베이스 사용량, 스토리지, 대역폭, 기능 호출, 사용자 번호 등을 기반으로 유연한 비용을 제공합니다.

참고 항목

참고문헌

  1. ^ Monroe, Martin. "The Gospel of MBaaS (Part 1 of 2)". InfoQ. Retrieved 6 May 2013.
  2. ^ Monroe, Martin. "The Gospel of MBaaS (Part 2)". InfoQ. Retrieved 15 May 2013.
  3. ^ a b Lane, Kin (3 June 2012). "Rise of Mobile Backend as a Service (MBaaS) API Stacks". API Evangelist. Retrieved 16 October 2012.
  4. ^ Carney, Michael. "AnyPresence partners with Heroku to beef up its enterprise mBaaS offering". PandoDaily. Archived from the original on 27 June 2013. Retrieved 24 June 2013.
  5. ^ Williams, Alex (11 October 2012). "Kii Cloud Opens Doors For Mobile Developer Platform With 25 Million End Users". TechCrunch. Retrieved 16 October 2012.
  6. ^ Tan, Aaron (30 September 2012). "FatFractal ups the ante in backend-as-a-service market". Techgoondu.com. Retrieved 16 October 2012.
  7. ^ Rowinski, Dan (9 November 2011). "Mobile Backend As A Service Parse Raises $5.5 Million in Series A Funding". ReadWrite. Retrieved 23 October 2012.
  8. ^ Mishra, Pankaj (7 January 2014). "MobStac Raises $2 Million In Series B To Help Brands Leverage Mobile Commerce". TechCrunch. Retrieved 22 May 2014.
  9. ^ Lane, Kin. "New Features From BaaS Provider AnyPresence". API Evangelist. Retrieved 28 May 2013.
  10. ^ a b c Lawler, Ryan (26 March 2012). "Parse offers its mobile backend-as-a-service on a freemium model". GigaOM. Archived from the original on 9 October 2012. Retrieved 16 October 2012.
  11. ^ a b Williams, Alex (11 July 2012). "Kinvey Raises $5 Million For Mobile And Web App Backend As A Service". TechCrunch. Retrieved 16 October 2012.
  12. ^ Facemire, Michael (2 September 2012). "Enterprise Mobility: How Fast Can Development Go?". Michael Facemire's Blog. Forrester.com. Retrieved 16 October 2012.
  13. ^ "Understanding the Basics of Backend as a Service (BaaS)". Mobile City. Silicon India. 9 August 2012. Retrieved 16 October 2012.
  14. ^ Rowinski, Dan (17 April 2012). "The Rise of Mobile Cloud Services: BaaS Startups Grow Up". ReadWrite. Retrieved 23 October 2012.
  15. ^ Lane, Kin. "New Features From BaaS Provider AnyPresence". API Evangelist. Retrieved 28 May 2013.
  16. ^ a b c d Zomko, Roman. "The Brief Guide to Backend as a Service (BaaS)". impressit.io. Retrieved 23 November 2023.
  17. ^ "Firebase Cloud Messaging". Firebase. Retrieved 24 November 2023.
  18. ^ "Notifications - AWS Amplify Hosting". docs.aws.amazon.com. Retrieved 24 November 2023.
  19. ^ a b "Cloud Functions for Firebase". Firebase. Retrieved 24 November 2023.
  20. ^ a b "Functions - Docs - Appwrite". Appwrite. Retrieved 24 November 2023.
  21. ^ "Edge Functions Supabase Docs". Supabase. Retrieved 24 November 2023.
  22. ^ Ail, Vijit (15 June 2022). "Using Edge Functions in Supabase: A complete guide". LogRocket Blog. Retrieved 24 November 2023.
  23. ^ Rowinski, Dan (17 April 2012). "The Rise of Mobile Cloud Services: BaaS Startups Grow Up". ReadWrite. Retrieved 23 October 2012.
  24. ^ "Google Analytics for Firebase". Firebase. Retrieved 24 November 2023.
  25. ^ "Full Stack Web App Editor - Extensible App Builder - AWS Amplify Studio - AWS". Amazon Web Services, Inc. Retrieved 24 November 2023.
  26. ^ "UI Builder". Backendless. Retrieved 24 November 2023.
  27. ^ "Firebase Extensions". Firebase. Retrieved 24 November 2023.
  28. ^ "Avatars API Reference - Docs - Appwrite". Appwrite. Retrieved 24 November 2023.
  29. ^ "Locale API Reference - Docs - Appwrite". Appwrite. Retrieved 24 November 2023.
  30. ^ "Back4App Agent". Back4App. Retrieved 24 November 2023.
  31. ^ a b "How to Choose the Right Backend as a Service (BaaS) Provider for Your Project". DEV Community. 13 September 2023. Retrieved 23 November 2023.
  32. ^ "Supabase The Open Source Firebase Alternative". Supabase. Retrieved 24 November 2023.
  33. ^ "What is BaaS? Backend-as-a-Service vs. serverless". Cloudflare. Retrieved 23 November 2023.
  34. ^ "What Is Mobile Backend As A Service (MBaaS)? (2022)". Backendless. 20 January 2023. Retrieved 23 November 2023.
  35. ^ "MongoDB Stitch - Backend as a Service". MongoDB. Retrieved 21 June 2017.
  36. ^ "Firebase Pricing". Firebase. Retrieved 19 September 2023.