시작

Firebase

작성일 2026.06.26 수정일 2026.06.26 조회 29

기본 정보

  • 이름: Firebase
  • 분류: BaaS(Backend as a Service)
  • 개발사: Google
  • 최초 공개: 2011년 (2014년 Google 인수)
  • 주요 용도: 인증, 데이터베이스, 스토리지, 호스팅, 푸시 알림
  • 관련 주제: #Firebase #BaaS #Backend #Google #Cloud

개요

Firebase는 Google에서 제공하는 BaaS(Backend as a Service) 플랫폼이다.

회원가입, 로그인, 데이터베이스, 파일 저장, 푸시 알림, 분석, 호스팅 등 백엔드에서 자주 필요한 기능을 직접 서버를 구축하지 않고 사용할 수 있다.

특히 MVP(최소 기능 제품), 스타트업, 모바일 앱, 개인 프로젝트 개발에서 많이 사용되며, Flutter, Android, iOS, Unity, React, Next.js 등과 쉽게 연동할 수 있다.


Firebase 구조

Client App

↓

Firebase SDK

↓

Firebase Services

├── Authentication
├── Firestore
├── Storage
├── Hosting
├── Cloud Functions
├── FCM

↓

Google Cloud

주요 특징

  • 서버 구축 없이 백엔드 제공
  • 실시간 데이터 동기화
  • 다양한 인증 방식
  • 클라우드 스토리지
  • 서버리스(Serverless)
  • 모바일·웹 통합 지원
  • Google Cloud 기반

주요 서비스

Authentication

회원 인증 서비스

지원 방식

  • 이메일/비밀번호
  • Google 로그인
  • Apple 로그인
  • GitHub 로그인
  • Facebook 로그인
  • 익명 로그인
  • 전화번호 인증

Firestore

NoSQL 문서(Document) 기반 데이터베이스

Collection

↓

Document

↓

Field

예시

users

↓

user001

↓

name

age

email

Realtime Database

실시간 동기화 데이터베이스

Client A

↓

Firebase

↓

Client B

↓

즉시 반영

채팅, 실시간 게임 등에 적합하다.


Cloud Storage

파일 저장 서비스

지원

  • 이미지
  • 동영상
  • PDF
  • 문서
  • 음성 파일

Hosting

웹사이트 배포 기능

React

↓

Firebase Hosting

↓

HTTPS

정적 웹사이트를 빠르게 배포할 수 있다.


Cloud Functions

서버리스 함수

Client

↓

Cloud Function

↓

Database

Node.js 기반으로 실행된다.


Firebase Cloud Messaging (FCM)

푸시 알림 서비스

Server

↓

FCM

↓

Android

iPhone

Web

Analytics

사용자 행동 분석

수집 예시

  • 앱 실행 수
  • 방문자 수
  • 구매 이벤트
  • 버튼 클릭
  • 사용자 유지율

Firestore 예제

import {

collection,

getDocs

}

from

"firebase/firestore";

데이터 조회

const snapshot =

await getDocs(

collection(

db,

"users"

)

);

Authentication 예제

import {

signInWithEmailAndPassword

}

from

"firebase/auth";

로그인

await signInWithEmailAndPassword(

auth,

email,

password

);

Storage 예제

uploadBytes(

storageRef,

file

);

이미지를 업로드할 수 있다.


Hosting 배포

firebase deploy

Flutter와 Firebase

Flutter

↓

Firebase

↓

Authentication

Firestore

Storage

Flutter에서 가장 많이 사용하는 백엔드 중 하나이다.


Unity와 Firebase

Unity

↓

Firebase SDK

↓

Login

Cloud Save

Analytics

게임 개발에서 자주 활용된다.


React와 Firebase

React

↓

Firebase

↓

Firestore

Next.js와 Firebase

Next.js

↓

Firebase Auth

↓

Firestore

↓

Hosting

Firebase vs MySQL

FirebaseMySQL
NoSQLRDBMS
실시간 지원별도 구현 필요
서버리스서버 구축 필요
빠른 개발구조 설계 필요
문서(Document) 기반테이블 기반

Firebase vs Supabase

FirebaseSupabase
NoSQL 중심PostgreSQL 기반
Google 생태계오픈소스
Firestore 사용SQL 사용
FCM 지원기본 제공 안 함
Cloud FunctionsEdge Functions 지원

대표 활용 분야

  • 모바일 앱
  • Flutter 프로젝트
  • Unity 게임
  • React 프로젝트
  • 채팅 서비스
  • 관리자 페이지
  • 실시간 서비스
  • MVP 개발

장점

  • 빠른 개발
  • 서버 관리 불필요
  • 실시간 데이터
  • 인증 기능 제공
  • 높은 확장성
  • Google Cloud 기반

단점

  • 벤더 종속(Vendor Lock-in)
  • 복잡한 SQL 조회에 불리
  • 대규모 서비스에서는 비용 증가 가능
  • Firestore 데이터 모델링 학습 필요

실무 메모

실무에서는 다음과 같은 방식이 권장된다.

  • Firestore 보안 규칙(Security Rules) 설정
  • Authentication와 Firestore 권한 연동
  • 환경 변수(API Key) 분리
  • Cloud Storage 업로드 제한 설정
  • Cloud Functions로 민감한 로직 처리
  • Analytics 이벤트 설계
  • Firestore 읽기/쓰기 비용 모니터링
  • 컬렉션 구조를 단순하게 설계
  • 오프라인 캐시 기능 활용
  • 무료 플랜 한도와 과금 정책 확인

Firebase와 함께 사용하는 기술


대표 활용 사례

  • 모바일 로그인 시스템
  • 채팅 앱
  • 실시간 게임 랭킹
  • 클라우드 저장
  • 쇼핑몰 회원 관리
  • AI 서비스 사용자 인증
  • 포트폴리오 사이트
  • MVP 서비스

관련 문서


출처

  • Firebase 공식 홈페이지
  • Firebase 공식 문서
  • Google Cloud 문서