Tài liệu
Triển khai và vận hành
BayHub hiện được triển khai riêng cho từng khách: một ứng dụng và một cơ sở dữ liệu cho mỗi công ty. Bản thuê bao dùng chung, nơi bạn tự đăng ký và dùng thử, chưa có. Trang này nói đúng những gì có hôm nay.
Thành phần
| Thành phần | Chi tiết |
|---|---|
| Ứng dụng | Một ứng dụng Next.js đóng trong một container Docker (Node 22). Giao diện, máy quét điện thoại, cổng thương hiệu, trang tra cứu vận đơn và API cùng chạy trong đó |
| Cơ sở dữ liệu | PostgreSQL 16. Ứng dụng tự áp các migration khi khởi động |
| Việc nền | Chạy trong chính ứng dụng, theo giờ thật: quét đơn sàn, gia hạn token, đẩy tồn, chốt kỳ, hỏi trạng thái ví, quét trạng thái hãng vận chuyển |
| Máy quét | Màn hình web trên điện thoại, nhận mã từ máy quét cầm tay dạng bàn phím hoặc nhập tay |
Cấu hình
Mọi cấu hình đi qua biến môi trường, không có tệp cấu hình riêng. Các nhóm biến:
- Lõi: địa chỉ cơ sở dữ liệu, khoá ký phiên đăng nhập, địa chỉ công khai của hệ thống.
- Chế độ: bật hoặc tắt bộ mô phỏng, bật hoặc tắt việc nền.
- Đối tác: mỗi đối tác thật (hãng vận chuyển, sàn, ngân hàng, ví, hoá đơn điện tử) tắt cho tới khi máy chủ có khoá của đối tác đó. Xem các trang tích hợp trong mục Tài liệu.
Khoá và mật khẩu nằm trong môi trường của máy chủ, không nằm trong mã nguồn hay trong cơ sở dữ liệu của ví dụ.
Khởi tạo cho khách thật
Dữ liệu mẫu (một công ty hư cấu, hai kho, bốn thương hiệu) chỉ dành cho sandbox. Khi triển khai cho kho của bạn, đội BayHub cùng bạn khởi tạo hệ thống trống, tạo tài khoản quản trị đầu tiên, rồi nhập kho, vị trí, SKU và thương hiệu. Bạn không dùng tài khoản mẫu.
Theo dõi sức khoẻ
Đường dẫn /api/health trả về trạng thái hệ thống:
- hệ thống có trả lời và nối được cơ sở dữ liệu hay không;
- từng việc nền: lần chạy thành công gần nhất, có quá hạn không, việc nào là việc quan trọng;
- trạng thái
degradedkhi một việc quan trọng im lặng quá ba chu kỳ của nó.
Trang Cài đặt của quản trị viên có bảng "Việc chạy nền" với cùng thông tin.
Một tiến trình chạy việc nền
Việc nền được giữ bằng một khoá trong cơ sở dữ liệu, nên khi có hai bản ứng dụng chạy cùng lúc (ví dụ lúc cập nhật) chỉ một bản chạy việc nền. Bản kia vẫn phục vụ người dùng.
Sao lưu
Sao lưu cơ sở dữ liệu là việc của bên vận hành hạ tầng. BayHub không tự sao lưu ra ngoài máy chủ. Khi triển khai, hai bên thống nhất lịch sao lưu và nơi cất, và thử khôi phục ít nhất một lần.
Điều chưa có
- Chạy nhiều bản ứng dụng song song để chia tải (việc nền đã an toàn khi có nhiều bản, nhưng bộ đệm và giới hạn tần suất nằm trong bộ nhớ từng bản).
- Một hệ thống dùng chung cho nhiều công ty với dữ liệu tách hẳn nhau.
- Đăng nhập một lần (SSO) và xác thực hai bước.