🔥 Backend của Google cho người vibe coding

Firebase

Firebase là bộ backend gói sẵn của Google. Nổi tiếng nhất ở khả năng realtime và hợp với app mobile. Gần đây Firebase mở rộng thêm cả database kiểu SQL, nên lựa chọn rộng hơn xưa.

Nhớ một điều: Firebase mạnh khi dữ liệu cần cập nhật tức thì và khi bạn làm app điện thoại. Cũng như Supabase, nó lo hậu trường, giao diện vẫn của bạn.
App web hoặc mobilegiao diện của bạn
Frontend
Firebase config + SDK
Dự án Firebasehậu trường của Google
Backend
Realtime
🔐Auth
📁Storage
Giới thiệu

Firebase là gì?

Hiểu ngắn: một bộ backend đóng gói sẵn của Google, cắm vào là chạy, rất mạnh cho app cần dữ liệu sống động theo thời gian thực.

🔥 Backend gói sẵn của Google

Bạn có ngay nhiều dịch vụ trong một dự án:

  • Database Firestore (kiểu NoSQL, linh hoạt).
  • Mới: SQL Connect database kiểu Postgres, có realtime.
  • Đăng nhập (Auth), lưu file (Storage).
  • Cloud Functions, và cả Hosting để chứa giao diện.

🙌 Vì sao người mới hay chọn

Đặc biệt mạnh ở vài điểm:

  • Realtime mượt, dữ liệu đổi là màn hình đổi theo.
  • Rất hợp app điện thoại (Android, iOS).
  • Firebase Studio dựng app bằng AI Gemini.
  • Hệ sinh thái Google lớn, tài liệu nhiều.
Ẩn dụ dễ nhớ: Nếu Supabase giống cái kho có kệ xếp ngay ngắn theo hàng cột (SQL), thì Firestore của Firebase giống cái kho với nhiều thùng hồ sơ linh hoạt, nhét nhanh được nhiều kiểu đồ (NoSQL).
Các viên gạch

Trong Firebase có những gì?

Không cần dùng hết. Hầu hết app chỉ cần một database và phần đăng nhập là chạy thật.

🧩

Firestore

Database NoSQL. Dữ liệu dạng tài liệu linh hoạt, mạnh về realtime.

🗂️

SQL Connect

Lựa chọn SQL mới. Database kiểu Postgres cho dữ liệu quan hệ, vẫn có realtime.

🔐

Authentication

Đăng nhập dựng sẵn. Email, Google, số điện thoại và nhiều cách khác.

📁

Storage

Lưu file. Ảnh, video, tài liệu của người dùng.

🛰️

Cloud Functions

Code chạy phía server. Cho logic riêng, gửi thông báo, gọi AI.

🌍

Hosting

Chứa giao diện. Firebase có thể host luôn frontend, không bắt buộc dùng nơi khác.

Phần chính

Nối app vào Firebase

Trình tự chung, mô tả mỗi bước làm gì. Giao diện Firebase có thể đổi theo thời gian nên hãy nắm ý chính.

1

Tạo dự án Firebase

Mở Firebase Console, tạo project mới gắn với tài khoản Google.

Vì sao: đây là "ngôi nhà" chứa toàn bộ backend của app.
2

Chọn database

Chọn Firestore (NoSQL, linh hoạt, realtime) hoặc SQL Connect (kiểu Postgres) tùy dữ liệu của bạn.

Vì sao: chọn đúng kiểu dữ liệu ngay từ đầu đỡ phải sửa lớn về sau.
3

Đặt Security Rules

Viết quy tắc bảo mật: ai được đọc, ai được ghi dữ liệu nào. Đây là phần khóa dữ liệu của Firebase.

Vì sao: để mặc định mở là bất kỳ ai cũng đọc ghi được, rất nguy hiểm.
4

Bật cách đăng nhập

Trong phần Authentication, bật email, đăng nhập Google hoặc số điện thoại.

Vì sao: có đăng nhập mới biết dữ liệu là của ai.
5

Lấy Firebase config

Firebase cấp một đoạn cấu hình (config) gồm khóa và mã dự án để app kết nối vào.

Vì sao: đây là thông tin để giao diện app tìm đúng dự án của bạn.
6

Gắn Firebase SDK vào app

Cài thư viện Firebase, dán config vào. Sau bước này app đã đọc ghi được dữ liệu thật.

Vì sao: đây là lúc giao diện và hậu trường bắt tay nhau.
7

Viết Cloud Function (tùy chọn)

Nếu cần xử lý riêng như gửi thông báo hay gọi AI, viết một Cloud Function chạy phía server.

Vì sao: giữ logic nhạy cảm ở server, không lộ ra giao diện.
8

Kiểm tra thật và đưa lên

Đăng nhập thử, thêm dữ liệu, thử bằng tài khoản khác xem rules có chặn đúng. Rồi đưa giao diện lên Firebase Hosting hoặc hosting khác.

Vì sao: chạy được mới tính, đừng tin là xong khi chưa thử.
Bảo mật

Hiểu đúng về khóa của Firebase

Firebase có điểm dễ nhầm: khóa trong config không phải bí mật. An toàn thật sự nằm ở Security Rules.

Để ở giao diện được

🔓 Firebase config (apiKey)

Khóa này dùng để nhận diện dự án, không phải mật khẩu. Để trong giao diện là bình thường. Cái thật sự giữ an toàn là Security Rules.

Tuyệt đối giữ kín

🔐 Service account key

Khóa quản trị (Admin SDK), bỏ qua mọi quy tắc bảo mật. Chỉ dùng ở phía server hoặc Cloud Function, không bao giờ để trong giao diện hay đẩy lên GitHub.

Quan trọng nhất: Vì khóa config công khai, Security Rules là tuyến phòng thủ chính. Luôn viết rules chặt: người dùng chỉ đọc và ghi đúng dữ liệu của mình. Khóa service account thì để trong environment variable, thêm .env vào .gitignore.
Cân nhắc

Khi nào nên chọn Firebase?

Mỗi lựa chọn có cái được và cái mất. Đây là bức tranh thật để bạn quyết.

👍 Hợp khi

  • App cần realtime mạnh: chat, cộng tác, bảng điểm trực tiếp.
  • Bạn làm app điện thoại (Android, iOS).
  • Bạn đã quen và thích hệ sinh thái Google.
  • Dữ liệu hay đổi hình dạng, muốn ghi nhanh không cần khuôn cứng.

👎 Cân nhắc khi

  • Dữ liệu nhiều quan hệ phức tạp: NoSQL truy vấn khó hơn (nay có SQL Connect đỡ phần này).
  • Chi phí Firestore tính theo lượt đọc ghi, app đông có thể đội lên.
  • Gắn chặt vào Google, sau này muốn dời đi sẽ tốn công hơn.
Phòng trước cho đỡ khổ

Lỗi thường gặp & mẹo nhờ AI

Người mới hay vấp đúng vài chỗ này khi dùng Firebase.

🛡️

Để Security Rules mở

Lúc làm thử hay để chế độ mở, rồi quên đóng. Ai cũng đọc ghi được dữ liệu.

Cách sửa: viết rules chặt theo từng người trước khi cho người thật dùng.
💸

Đọc dữ liệu quá nhiều

Firestore tính tiền theo lượt đọc ghi. Tải lại liên tục hoặc đọc cả đống dễ tốn.

Cách sửa: chỉ đọc cái cần, dùng phân trang, tránh tải lại không cần thiết.
🧩

Nhầm NoSQL như SQL

Firestore không nối bảng như SQL. Thiết kế kiểu SQL vào Firestore sẽ vướng.

Cách sửa: thiết kế dữ liệu theo cách NoSQL, hoặc chọn SQL Connect nếu cần quan hệ.
🤖

Nhờ AI nhưng không kiểm

AI gắn Firebase rất nhanh, nhưng có thể để rules lỏng hoặc lộ khóa service account.

Cách sửa: tự kiểm rules, tự dán service account vào env, thử bằng tài khoản khác.
Ví dụ cách giao việc cho AI "Hãy nối app này với Firebase dùng Firestore. Tạo cấu trúc dữ liệu cho công việc gồm tiêu đề, trạng thái và chủ sở hữu. Viết Security Rules để mỗi người chỉ đọc ghi công việc của mình. Dùng config tôi đặt trong environment variable, đừng dán khóa service account vào code."

Chọn Firebase khi app của bạn cần sống động theo thời gian thực.

Nắm được Firestore và SQL Connect khác nhau ra sao, viết Security Rules cho chặt, giữ khóa service account an toàn, là bạn đã có thể cho app chạy thật với người dùng một cách yên tâm.

← Về trang chủ backend · Phong Ho - AI Business