# 🗺️ Bản đồ chi phí: băng thông, egress, storage và database nhàn rỗi

By Better Wise

Bài này mở đầu module đọc hoá đơn. Bạn đã từng mở hoá đơn cloud và chỉ nhìn đúng một dòng Total chưa? Tôi cũng vậy, cho tới tháng hoá đơn nhảy từ 40 đô lên 310 đô mà tôi không giải thích được dòng nào. Lý do không phải một khoản phí khổng lồ, mà là bốn nhóm phí nhỏ, đều đặn, nằm rải rác và không ai gắn chúng với traffic thật. Bài này vẽ bản đồ bốn nhóm đó trước khi bạn học cách đọc từng line item ở bài sau.

Sau bài này, bạn sẽ:

- Kể được tên bốn nhóm phí hay bị bỏ sót và cách mỗi nhóm được tính tiền.
- Nhận ra dấu hiệu của từng nhóm khi nhìn vào app của mình.
- Tính nhẩm được chi phí egress và database nhàn rỗi bằng số liệu thật của bạn.
- Chỉ ra nhóm nào đang tốn tiền nhất trong app bạn đang chạy.

```mermaid
flowchart LR
    Bill["🧾<br/>Hoá đơn cloud"]
    Bill --> Net["🌐<br/>Băng thông / egress"]
    Bill --> Store["🗄️<br/>Storage"]
    Bill --> DB["🛢️<br/>Database"]
    Bill --> Idle["💤<br/>Tài nguyên treo"]
    Net --> N1["GB đi ra"]
    Net --> N2["Ảnh gốc chưa resize"]
    Store --> S1["GB-tháng"]
    Store --> S2["Versioning, snapshot cũ"]
    DB --> D1["Tính theo giờ chạy"]
    DB --> D2["Staging, dev, replica"]
    Idle --> I1["Ổ đĩa mồ côi"]
    Idle --> I2["IP tĩnh không dùng"]
```

## Bốn nhóm phí và cách chúng tính tiền

| Nhóm phí | Đơn vị tính | Dấu hiệu trên hoá đơn | Câu hỏi tự vấn |
| --- | --- | --- | --- |
| Egress | GB dữ liệu đi ra | Dòng tăng theo lượng người xem | Ảnh, file này có đang bị tải ở kích thước gốc? |
| Storage | GB-tháng | Dòng tăng đều, không bao giờ giảm | Có thứ gì đó tôi chưa từng xoá? |
| Database | Giờ chạy (hoặc instance size) | Dòng cố định, không đổi theo traffic | Cái DB này có phục vụ người dùng thật không? |
| Tài nguyên treo | Giờ hoặc GB | Dòng nhỏ, lặp lại, không ai nhận là của mình | Ai đang sở hữu tài nguyên này? |

## Băng thông và egress: tiền chỉ chảy một chiều

Dữ liệu đi vào hệ thống (ingress) gần như luôn miễn phí. Dữ liệu đi ra (egress) mới là khoản bị tính, thường theo GB. Nên câu hỏi đúng không phải "app tôi có nhiều traffic không", mà là "mỗi lượt xem tôi đẩy ra bao nhiêu GB". Phí _____ là phí dữ liệu đi ra khỏi nhà cung cấp, tính theo GB, còn _____ thường được miễn phí.

**Ví dụ có số.** Một trang sản phẩm có 8 ảnh. Nếu bạn upload ảnh gốc 4 MB mỗi tấm và hiển thị nguyên bản, mỗi lượt xem tải 32 MB. Với 30.000 lượt xem mỗi tháng, đó là 960 GB. Ở mức giá giả định 0,09 đô/GB, bạn trả khoảng 86 đô mỗi tháng. Nếu resize ảnh hiển thị xuống 250 KB, cùng 30.000 lượt xem chỉ còn khoảng 60 GB, tức khoảng 5,5 đô. Cùng một app, cùng lượng người dùng, chênh nhau gần 16 lần. **Egress không phụ thuộc vào số người dùng, nó phụ thuộc vào số byte bạn gửi cho mỗi người.**

Một biến thể nữa: video hoặc file tải về. Một video 100 MB, 500 lượt xem mỗi tháng, đã là 50 GB. Đây là lý do các dịch vụ video đẩy file qua CDN có giá egress riêng, rẻ hơn egress trực tiếp từ server gốc.

## Storage: khoản phí chỉ tăng, không bao giờ tự giảm

Storage tính theo _____, nghĩa là dung lượng bạn chiếm nhân với thời gian bạn giữ nó. Vấn đề không phải giá mỗi GB, mà là không có cơ chế nào tự xoá giúp bạn. Ba nguồn phình phổ biến:

- **Ảnh và video gốc** vẫn nằm trong bucket sau khi đã tạo bản resize.
- **Versioning**: mỗi lần ghi đè, bản cũ vẫn được giữ. Bucket 20 GB có thể thành 80 GB sau vài tháng deploy liên tục.
- **Snapshot và backup**: giữ snapshot hàng ngày trong 30 ngày nghĩa là bạn đang trả cho khoảng 30 bản sao chồng lên nhau.

**Ví dụ có số.** Bucket chứa 200 GB ảnh, mỗi tháng phát sinh thêm 20 GB, không xoá gì. Ở mức 0,023 đô/GB-tháng, tháng đầu bạn trả 4,6 đô, tháng thứ mười hai đã là khoảng 10 đô. Con số tuyệt đối không lớn, nhưng nó không bao giờ giảm và nó âm thầm đi kèm hoá đơn egress. Khoản storage đáng lo không phải vì nó đắt, mà vì nó là chỉ báo rằng bạn đang giữ mọi thứ mãi mãi.

## Database nhàn rỗi: chiếc xe vẫn nổ máy trong gara

Đây là nhóm phí tôi đau nhất. Database thường tính theo giờ chạy, 24/7, bất kể có ai truy vấn hay không. _____.

**Ví dụ có số.** Giả sử một DB instance giá 0,10 đô/giờ, tức khoảng 73 đô/tháng nếu chạy liên tục:

- Production: dùng thật, 73 đô. Hợp lý.
- Staging: chỉ dùng vài giờ mỗi tuần để test, 73 đô.
- Dev của một bạn trong nhóm, 73 đô.
- Replica chỉ để chạy báo cáo một lần mỗi ngày, 73 đô.

Tổng 292 đô, trong đó 219 đô dành cho những DB gần như không phục vụ ai. Database nhàn rỗi thường chiếm phần lớn hoá đơn của một team nhỏ, đơn giản vì nó là khoản duy nhất không giảm khi bạn không có người dùng.

Cùng nhóm này còn có **ổ đĩa mồ côi**: bạn tắt instance nhưng ổ đĩa gắn ngoài vẫn tồn tại và vẫn tính tiền cho tới khi bạn xoá. Tương tự là IP tĩnh đã gỡ khỏi server nhưng chưa release, và load balancer không còn backend nào.

**Bài tập nhanh: app của bạn đang tốn ở nhóm nào?**

Lấy ba con số từ app của bạn: (1) dung lượng trung bình một lượt xem trang, (2) số lượt xem mỗi tháng, (3) số database instance đang chạy và cái nào là staging hoặc dev.

Nhân (1) với (2) để ra GB egress mỗi tháng. Nhân số database phụ với khoảng 730 giờ và đơn giá mỗi giờ. So hai kết quả với nhau.

Trong phần lớn app nhỏ chưa tối ưu ảnh, egress thắng. Trong phần lớn app đã resize ảnh nhưng có staging và dev, database nhàn rỗi thắng. Nhóm nào thắng thì đó là nơi bạn nên soi line item đầu tiên ở bài sau.

## Ba cái bẫy tôi đã sập, để bạn khỏi sập

- **Chỉ soi dòng Total.** Hoá đơn cloud không giấu một khoản khổng lồ, nó giấu nhiều khoản nhỏ. Đọc từ trên xuống theo đơn giá, đừng nhảy tới tổng.
- **Nghĩ storage rẻ nên bỏ qua.** Đúng là rẻ, nhưng nó là chỉ báo: dung lượng tăng đều nghĩa là có thứ gì đó bạn chưa từng dọn. Dọn một lần thường cắt luôn được cả egress đi kèm.
- **Quên rằng tắt không bằng xoá.** Tắt instance không xoá ổ đĩa, không release IP, không xoá snapshot. Mỗi thứ đó là một dòng phí riêng.

Quy tắc ngón tay: với mỗi tài nguyên, hỏi hai câu. Nó có phục vụ người dùng thật không? Nó có cần chạy 24/7 không? Nếu cả hai đều "không", đó là ứng viên tắt ngay từ hôm nay.

## Mang về bốn con số và một câu hỏi

Bốn nhóm phí cần nhớ: egress tính theo GB đi ra, storage tính theo GB-tháng và chỉ tăng, database tính theo giờ chạy kể cả khi nhàn rỗi, và tài nguyên treo vẫn tính tiền cho tới khi bị xoá. Bạn không cần tối ưu cả bốn cùng lúc, chỉ cần biết nhóm nào đang lớn nhất trong app của bạn.

Bài sau, **Đọc hoá đơn cloud: line item, usage và phí bất thường**, sẽ mở đúng cái hoá đơn đó ra và chỉ cho bạn cách đọc từng dòng, đối chiếu usage với traffic thật, và nhận ra dòng nào đang kể một câu chuyện sai.

Phí _____ là phí dữ liệu đi ra khỏi nhà cung cấp và thường được tính theo _____.
Storage được tính theo _____, nên chi phí tăng khi bạn giữ dữ liệu lâu hơn.
Bật _____ trên bucket khiến mỗi lần ghi đè vẫn giữ lại bản cũ và làm storage tăng dần.

Front: Phí egress là gì?
Back: Phí dữ liệu đi ra khỏi nhà cung cấp, tính theo GB.

Front: Vì sao ingress hiếm khi là khoản đáng lo?
Back: Dữ liệu đi vào thường miễn phí, chiều bị tính tiền là chiều đi ra.

Front: Egress phụ thuộc vào số người dùng hay số byte mỗi lượt?
Back: Vào số byte gửi cho mỗi lượt, không phải số người dùng.

Front: Storage được tính theo đơn vị nào?
Back: GB-tháng, tức dung lượng chiếm dụng nhân với thời gian giữ.

Front: Bật versioning trên bucket gây tác dụng phụ gì lên chi phí?
Back: Mỗi lần ghi đè vẫn giữ bản cũ, storage tăng dần mà không ai để ý.

Front: Vì sao snapshot cũ là khoản phí ẩn?
Back: Snapshot giữ bản sao ổ đĩa ở nhiều thời điểm, dung lượng cộng dồn theo số ngày lưu.

Front: Database nhàn rỗi bị tính tiền theo cách nào?
Back: Theo giờ chạy, dù gần như không có truy vấn nào.

Front: Ba loại database hay bị bỏ quên nhất?
Back: Staging, dev và replica chỉ dùng cho báo cáo.

Front: Tắt instance đã đủ để ngừng trả tiền cho ổ đĩa chưa?
Back: Chưa, ổ đĩa gắn ngoài vẫn tính tiền cho tới khi bị xoá.

Front: Vì sao resize ảnh là đòn mạnh nhất vào egress?
Back: Ảnh gốc nặng gấp nhiều lần bản hiển thị, mỗi lượt xem tải lại toàn bộ.

Front: Vì sao khoản phí ẩn lại khó thấy?
Back: Vì chúng nhỏ, đều đặn và nằm rải ở nhiều dòng, không nhảy một cục.

Front: Hai câu hỏi tự vấn cho mỗi tài nguyên là gì?
Back: Nó có phục vụ người dùng thật không, và có cần chạy 24/7 không.

---

## Contents

Part of [🧾 Chi phí hạ tầng cho vibe coder: đọc hoá đơn cloud và giữ ngân sách](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach.md)

- **🔍 Đọc hoá đơn cloud và tìm khoản phí bị bỏ sót**
  - [🗺️ Bản đồ chi phí: băng thông, egress, storage và database nhàn rỗi](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/ban-do-chi-phi-bang-thong-egress-storage-database-nhan-roi.md) — this lesson
  - [📄 Đọc hoá đơn cloud: line item, usage và phí bất thường](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/doc-hoa-don-cloud-line-item-usage-phi-bat-thuong.md) (sign-in required)
  - [⚖️ Right-sizing và chọn tier: cắt phí mà không giảm trải nghiệm](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/right-sizing-va-chon-tier-cat-phi.md)
  - [✅ Checkpoint: đọc hoá đơn và phát hiện khoản phí bị bỏ sót](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/checkpoint-doc-hoa-don-va-phat-hien-phi-bi-bo-sot.md)
- **🎛️ Kiểm soát chủ động: tag, budget alert và chi phí AI**
  - [🏷️ Tag chi phí và budget alert: kiểm soát trước khi hoá đơn về](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/tag-chi-phi-va-budget-alert.md)
  - [🤖 Ước lượng chi phí token khi gọi AI API](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/uoc-luong-chi-phi-token-ai-api.md)
  - [🧮 Quy tắc tắt tài nguyên không dùng và chi phí mỗi người dùng](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/quy-tac-tat-tai-nguyen-khong-dung-va-cost-per-user.md) (premium content)
  - [✅ Checkpoint: kiểm soát chi phí và tính cost per user](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/checkpoint-kiem-soat-chi-phi-va-cost-per-user.md) (premium content)
- [Course cheatsheet](https://everwise.study/courses/chi-phi-ha-tang-cho-vibe-coder-doc-hoa-don-cloud-va-giu-ngan-sach/cheatsheet.md) (premium content)
