Giải pháp nền tảng cốt lõi (Core Platform) phục vụ chuỗi các website đặt lịch dịch vụ thể thao dưới nước và du lịch biển (Surf, Dive, Kite) trên toàn quốc.
Sử dụng kiến trúc Monorepo để dễ dàng nhân bản, Astro cho Frontend siêu tốc độ, và Go (Gin) cho Backend độc lập, bảo mật.
Xây dựng một hệ thống web cốt lõi giúp doanh nghiệp dễ dàng mở rộng và triển khai hàng loạt các website đặt lịch dịch vụ thể thao biển (Đà Nẵng Surf, Phú Quốc Dive...) với chi phí vận hành tối thiểu. Dù quản lý tập trung, hệ thống vẫn phục vụ nhiều nhóm khách hàng khác nhau với branding, nghiệp vụ, và database hoàn toàn riêng biệt.
Mỗi site tách biệt hoàn toàn về dữ liệu, auth, và process. Không có rủi ro lộ dữ liệu chéo giữa các tenant.
Thêm site mới không ảnh hưởng site cũ. Site 1 down không kéo theo hệ thống của Site 2.
Dù chạy độc lập, các site chia sẻ component, utilities, types qua shared packages của Monorepo.
Thay vì 1 backend multi-tenant phức tạp, tạo nhiều mini-application hoàn chỉnh. Tối ưu cho hệ thống ~5-20 sites cần isolation cao.
Lựa chọn tối ưu nhất cho website marketing và landing page với triết lý "Zero-JS by default".
Render sẵn HTML tại build-time (SSG). Tải trang tức thì, điểm PageSpeed Insights luôn cao.
Nội dung HTML đầy đủ có sẵn cho crawler, không cần hydration phức tạp, rất tốt cho Indexing.
Chỉ load JavaScript cho những component thật sự cần tương tác (Booking Form, Slider).
HTML được render tại build-time — trước khi user request. Server trả về file HTML tĩnh ngay lập tức, không cần xử lý gì thêm.
HTML được render tại request-time — mỗi lần user vào, server phải xử lý, render, rồi mới trả về. Phù hợp cho nội dung động cao.
Astro có thể bật output: 'server' để SSR từng route cụ thể. Landing page → SSG. Trang cần auth/dynamic → SSR per-route.
| Chỉ Số | Astro (SSG) | Next.js (SSR) | Mục Tiêu Google |
|---|---|---|---|
LCPLargest Contentful Paint | < 1.2s | 1.5 – 3.0s | < 2.5s ✓ |
INPInteraction to Next Paint | < 50ms | 100 – 200ms | < 200ms ✓ |
CLSCumulative Layout Shift | ≈ 0.00 | 0.05 – 0.15 | < 0.1 ✓ |
TBTTotal Blocking Time | 0 – 50ms | 200 – 600ms | < 200ms ✓ |
TTFBTime to First Byte | < 200ms | 300 – 800ms | < 800ms ✓ |
PSI ScorePageSpeed Insights | 95 – 100 | 60 – 80 | > 90 ✓ |
Tối ưu hóa tài nguyên server và tăng độ tin cậy với Golang + Gin framework.
Không dùng Multi-tenant chung 1 database. Mỗi site sở hữu 1 database vật lý riêng, đảm bảo 100% không rò rỉ dữ liệu chéo và dễ dàng backup/migrate.