BaaS(Backend-as-a-Service)는 개발자가 플러그 앤 플레이 기반으로 프론트엔드를 구축하고 유지 관리하는 데 집중할 수 있도록 웹 또는 모바일 개발의 배후 구성 요소를 아웃소싱하는 서비스 패러다임입니다. 서버 측 코드 작성의 부담에서 벗어나십시오.
인증, 데이터베이스 관리, 실시간 업데이트, 저장, 호스팅 및 푸시 알림과 같은 서버 측 작업을 지원하는 소프트웨어는 BaaS 플랫폼(모바일 앱용)에서 제공됩니다.
다양한 백엔드 서비스가 기본적으로 동일한 솔루션을 제공하더라도 서로 다른 백엔드 기술을 사용합니다. 이것은 특정 프로젝트에 가장 적합한 서비스를 선택할 때 많은 개발자에게 결정적인 요소입니다.
이 기사에서는 Supabase에 대해 자세히 알아보겠습니다.
수파베이스?
수파베이스 다양한 애플리케이션에 서비스로서의 백엔드를 제공하는 오픈 소스 Firebase 대안입니다. 설정이 정말 간단하고 다양한 프레임워크로 신속하게 작동합니다. Supabase는 Firebase를 오픈 소스로 대체한다고 자처합니다.
개발자가 백엔드를 빠르게 설정하는 데 도움이 됩니다. Supabase는 "주말에 구축하여 수백만 명으로 성장합니다."라고 말합니다.
Supabase 제품에는 Postgres 데이터베이스 및 인증 서비스가 포함되어 있으며 스토리지 및 서버리스 서비스(백엔드 논리용)가 아직 작동 중입니다. 모든 도구는 대부분 무료이며 오픈 소스입니다. Postgres 데이터베이스에는 데이터베이스 수정 및 관리 인터페이스에 대한 실시간 모니터링과 같은 데이터베이스 관련 도구가 포함되어 있습니다.
또한 Firebase에 필적하는 빠른 API 및 구문을 제공합니다. 이를 통해 일관된 방식으로 CRUD 작업을 처리할 수 있으므로 반복되는 CRUD 코드를 다시 작성하는 대신 생성에 집중할 수 있습니다.
Postgres 데이터베이스는 스프레드시트에서와 같은 방식으로 조직화되고 연결된 데이터를 저장할 수 있는 테이블입니다. 놀랍게도 프로젝트를 생성할 때 기존 스프레드시트를 Postgres 데이터베이스로 사용할 수 있습니다.
Supabase는 어떻게 작동합니까?
Supabase는 무료 소스 기술 모음입니다. 그들은 엔터프라이즈급 오픈 소스 솔루션으로 Firebase 기능을 만들고 있습니다. 도구와 커뮤니티가 MIT, Apache 2 또는 이에 상응하는 공개 라이선스에 따라 제공되는 경우 이를 사용하고 지원할 것입니다.
도구가 아직 없는 경우 도구를 만들고 다음과 같이 사용할 수 있습니다. 오픈 소스. Supabase는 Firebase의 1:1 매핑이 아닙니다. 그들의 목표는 개발자에게 다음을 사용하여 Firebase와 같은 개발 경험을 제공하는 것입니다. 오픈 소스 기술.
Supabase는 호스팅되는 플랫폼입니다. 아무것도 설치하지 않고도 가입하고 사용할 수 있습니다. 자체 호스팅 및 자체 서버에서 구축할 수도 있습니다.
- PostgreSQL은 안정성, 기능 견고성 및 속도면에서 좋은 평판을 얻고 있습니다. 30년 이상의 활발한 개발 끝에
- Realtime은 WebSocket을 사용하여 PostgreSQL 삽입, 업데이트 및 삭제를 수신할 수 있는 Elixir 서버입니다. Supabase는 Postgres의 복제 요청을 수신하고 복제 바이트 스트림을 JSON으로 변환한 다음 WebSocket을 통해 JSON을 브로드캐스트합니다.
- PostgREST는 PostgreSQL 데이터베이스를 RESTful API로 변환하는 웹 서버입니다.
- Storage는 Postgres를 권한 관리자로 사용하여 S3에 저장된 파일을 관리하기 위한 RESTful 인터페이스를 제공합니다.
- Postgres-meta는 무엇보다도 테이블을 다운로드하고, 책임을 할당하고, 쿼리를 수행할 수 있는 Postgres 관리용 RESTful API입니다.
- GoTrue는 사용자를 관리하고 SWT 토큰을 발행할 수 있는 SWT 기반 API입니다.
- Kong은 클라우드에서 실행되는 API 게이트웨이입니다.
시작하기
1. 프로젝트
Supabase에서 프로젝트는 모든 데이터베이스, 인증 사용자, 규칙, 테이블 및 파일 저장소를 위한 컨테이너입니다.
프로젝트를 호스팅할 수 있는 위치가 여러 곳 있으며 Supabase 관리자는 대기 시간을 줄이기 위해 지속적으로 새 사이트를 추가하고 있습니다. 프로젝트를 만드는 데 약 2분이 소요되므로 커피를 마시고 편안히 앉아 휴식을 취하세요.
2. 프로젝트 대시보드
프로젝트가 완료되면 아래와 유사한 대시보드가 표시됩니다. 이 대시보드는 데이터베이스 연결, 인증 요청, 스토리지 용량, 클라이언트 라이브러리 구현 등을 포함하여 프로젝트에 대해 알아야 할 모든 것을 보여줍니다.
3. 테이블 생성자 및 편집기
Supabase의 데이터베이스는 Postgres RLS(Row Level Security)를 사용하여 실시간 기능 및 정책 액세스 제어를 갖춘 관계형 PostgreSQL입니다. 개발자는 Supabase의 대시보드를 사용하여 테이블을 구성하고 열과 속성을 추가할 수 있습니다. 개발자는 Supabase를 사용하여 대시보드에서 직접 데이터를 수정할 수 있습니다.
4. 인증
Google, GitHub, Facebook, Twitter, GitLab 및 기타 인증 공급자는 Supabase에서 사용할 수 있습니다. 인증 패널을 사용하여 켤 수 있습니다. 폰 OTP와 매직링크 인증도 지원합니다.
5. 저장
Supabase는 모든 파일 유형을 처리할 수 있고 확장성이 내장된 오픈 소스 개체 스토리지 시스템입니다. 사용자 지정 규칙 및 권한을 활성화하는 사용하기 쉬운 API가 있습니다. CDN 통합과 자동 변환 및 최적화(자료 크기 조정 및 압축)가 곧 제공될 예정입니다. Supabase 스토리지는 이러한 기능을 포함하여 Firebase 스토리지와 강력한 경쟁자가 될 것입니다.
Supabase로 무엇을 만들 수 있습니까? (일부 예)
1. 구독 결제 Supabase + Stripe + Next.js로.
고성능 SaaS 앱을 위한 완벽한 스타터 세트입니다.
- Supabase는 안전한 사용자 관리 및 인증을 제공합니다.
- Stripe Checkout 및 Stripe 고객 포털 통합.
- Supabase는 PostgreSQL 위에 강력한 데이터 액세스 및 관리 도구를 제공합니다.
- 스트라이프 웹훅을 사용하면 요금제 및 구독 상태를 자동으로 동기화할 수 있습니다.
2. 킵링크: 태그와 아카이브가 있는 간편한 북마크 서비스
KeepLink는 Supabase 및 Next.js로 구축된 태그 및 아카이브가 있는 기본 북마크 서비스입니다. 소셜 공유 기능은 없지만 자신의 인스턴스를 호스팅할 수 있습니다.
- 기존 태그를 기반으로 새 책갈피에 자동으로 태그를 지정합니다.
- Supabase 스택 덕분에 URL, 제목, 설명, 태그 및 아카이브 콘텐츠에 대한 전체 텍스트 검색, 관리 데이터베이스에 대한 태그 별칭 및 안정적인 API 액세스가 이제 가능합니다.
- 메타스크래퍼를 사용하면 페이지의 제목과 설명을 자동으로 수집할 수 있습니다. SinglePage 및 Headless Chrome을 사용하여 페이지를 보관할 수도 있습니다.
3. 실시간 채팅 앱 Supabase + React로
- 실시간 메시징의 경우 Supabase(PostgreSQL 기반)가 사용됩니다.
- 프론트엔드는 React(CRA) + Vite를 사용합니다.
- 사용된 UI 라이브러리는 Chakra UI입니다.
주요 특징들
다음은 Supabase의 몇 가지 기능입니다.
- XNUMX분 이내에 데이터베이스를 설정하고 관리할 수 있는 대시보드/사용자 인터페이스.
- 사용자를 등록하고 데이터베이스의 액세스 제한을 업데이트하려면 사용자 인증을 적용하십시오.
- API 및 JavaScript 라이브러리.
- 실시간 데이터베이스 리스너.
- 기능(약간). SQL, JavaScript, Python 또는 Java로 작성할 수 있는 데이터베이스 저장 프로시저입니다.
장점
Supabase는 다음과 같은 이유로 차별화됩니다.
- Firebase와 달리 복잡한 쿼리나 텍스트 검색을 실행할 수 있습니다.
- Supabase가 자동으로 확장을 처리합니다(SQL 데이터베이스를 사용하더라도).
- Supabase는 PostgreSQL을 활용하므로 데이터 마이그레이션이 간단하고 .sql 파일을 사용하여 데이터를 가져올 수 있습니다.
단점
Supabase를 채택하는 데에는 몇 가지 단점이 있습니다. 그것들은 다음과 같습니다:
- 실시간 변경 사항을 수신하려면 테이블에 대한 복제 기능을 활성화해야 합니다.
- 실시간 업데이트가 활성화되면 Supabase의 보안 정책이 적용되지 않습니다.
- 기능이 제한됩니다.
- SDK는 JavaScript에서만 작동합니다(다른 언어에 대한 지원은 아직 베타 버전임).
가격 정책
1. 프리 티어
- 500MB의 저장 공간과 무제한 API 호출이 있는 데이터베이스
- 인증 – 최대 10,000명의 사용자
- 파일 스토리지 – 최대 1GB의 스토리지, 최대 2GB의 월간 전송 제한.
2. 사용한 만큼 지불
- 데이터베이스 – 스토리지 GB당 $0.125, API 호출 제한 없음
- 인증 – 무제한
- 파일 스토리지 – 데이터 저장 시 GB당 $0.021, 데이터 전송 시 $0.07/GB
자세한 가격 정보는 웹사이트에서 확인할 수 있습니다..
결론
수파베이스는 최고의 오픈소스입니다 Google의 Firebase에 대한 대안. PostgreSQL의 장점으로 인해 다양한 놀라운 기능을 제공하며 다른 실시간 데이터베이스 시스템과 같이 데이터 유형 제한이 없습니다.
Supabase와 뛰어난 기능을 사용하여 다양한 앱을 만들 수 있습니다. 오늘 시도해 보세요!
마르셀로
B2B SaaS의 경우 고객당 1명의 마스터 사용자가 있고 이 마스터와 관련된 다른 N명의 사용자가 이 고객의 데이터만 처리하는 것이 가능합니까?