KIẾN TRÚC HỆ THỐNG (SYSTEM ARCHITECTURE)#
Phiên bản (Version): v1.2.0
Trạng thái: Hoạt động (Production/Staging/Local)
1. Tech Stack#
Hệ thống được phát triển, tối ưu hóa và vận hành dựa trên các công nghệ lõi sau:Backend Core: PHP 8.x, Framework Laravel 10+
Frontend UI: Laravel Blade Template, TailwindCSS, Vanilla JS (Axios/Fetch API)
Database (RDBMS): MySQL / MariaDB (Triển khai qua AWS RDS)
Data & Search Engine: Elasticsearch (Tối ưu truy xuất Full-text search cho khối lượng Log cực lớn)
Cache & Queue: Redis (Triển khai qua AWS ElastiCache)
Web Server: Nginx kết hợp PHP-FPM
Crawler & Node: Môi trường Node.js (Xử lý các Serverless Nodes thu thập dữ liệu bất đồng bộ)
DevOps & Deployment: Đóng gói toàn diện bằng Docker & Docker Compose (Multi-stage build)
2. Mô hình Kiến trúc Hệ thống#
Kiến trúc hệ thống của Marketing Tool là một kiến trúc Client-Server MVC truyền thống kết hợp Hệ sinh thái Service & Job Queue.| Thành phần | Vai trò thực hiện trong hệ thống |
|---|
| Client Layer | Giao diện người dùng Web App (Render bằng Blade Template của Laravel, kết hợp CSS thuần/TailwindCSS & JS theo từng page). |
| Web Server & Routing | Laravel Framework Routing xử lý các luồng Web (Session-based) và API (Token-based/Sanctum). |
| Business Logic Layer | Controllers điều hướng request và Services chứa logic gọi API, tính toán, và gọi DB Repositories. |
| Background Jobs | Cronjob Daemon: Các API endpoint dạng /cron-* phục vụ như trigger cho hệ thống chạy song song (Async batching). |
| Webhook Layer | Ngõ kết nối (Endpoint POST) nhận Callback trả List kết quả/HTML từ các Serverless Nodes thu thập. |
| Data Layer MySQL | RDBMS MySQL (truy xuất DB thông qua Eloquent/Query Builder theo chuẩn PDO). |
| Data Layer Elastic | Elasticsearch Index (Chỉ dành cho Log Activities) để Search siêu nhanh Index String Payload Text lớn. |
| Deploy Environment | Node, Composer, PHP FPM, Nginx, Redis. App Deploy chạy trên các Docker Containers riêng biệt. |
Ngày cập nhật 2026-03-26 07:59:12