-
Notifications
You must be signed in to change notification settings - Fork 0
Home
PressKit là một hệ thống quản trị nội dung (CMS) chuyên dụng cho báo điện tử, được xây dựng trên nền tảng Laravel. Hệ thống tập trung vào hiệu suất cao, tối ưu SEO vượt trội và khả năng mở rộng linh hoạt cho các tòa soạn lớn.
- Hiệu năng: Tối ưu tốc độ tải trang và trải nghiệm người dùng.
- SEO & Nội dung: Tích hợp AI hỗ trợ biên tập và tối ưu hóa bộ máy tìm kiếm.
- Quy trình: Hỗ trợ Workflow xuất bản chuyên nghiệp (Editor - Reviewer - Publisher).
- Phân tích: Hệ thống tính toán bài viết Hot và Trending theo thời gian thực.
- Hạ tầng: Kiến trúc mở rộng, sẵn sàng cho hệ thống chịu tải lớn.
| Công nghệ | Mục đích |
|---|---|
| Laravel 10/11 | Backend Framework mạnh mẽ |
| MySQL 8.0 | Lưu trữ dữ liệu quan hệ chính |
| Redis | Xử lý Cache, Counter và Ranking bài viết |
| Meilisearch | Công cụ Full-text search tốc độ cao |
| Filament | Giao diện quản trị (Admin Panel) hiện đại |
| Horizon | Giám sát các tiến trình chạy ngầm (Queue) |
| CDN | Phân phối nội dung tĩnh toàn cầu |
Hệ thống hoạt động theo luồng tối ưu hóa bộ nhớ đệm:
- User -> CDN (Nội dung tĩnh)
- CDN -> Nginx (Web Server)
- Nginx -> Laravel (Xử lý logic)
- Laravel sử dụng Redis Cache trước khi truy vấn MySQL Database.
- Meilisearch đảm nhiệm vai trò tìm kiếm nhanh.
PressKit được thiết kế theo cấu trúc module giúp dễ dàng bảo trì:
Modules/
├── Article (Bài viết)
├── Category (Danh mục)
├── Tag (Thẻ)
├── Comment (Bình luận)
├── Media (Kho ảnh/Video)
├── SEO (Tối ưu)
├── Analytics (Thống kê)
├── Trending (Xu hướng)
├── Ads (Quảng cáo)
├── Search (Tìm kiếm)
├── AI (Trợ lý ảo)
├── User (Thành viên)
Hệ thống tuân thủ quy trình kiểm duyệt chặt chẽ:
- Editor (Biên tập viên): Soạn thảo bài viết, chuẩn bị media.
- Reviewer (Thư ký tòa soạn): Kiểm tra nội dung, hiệu chỉnh và duyệt.
- Publisher (Tổng biên tập): Phê duyệt cuối cùng và xuất bản.
Sử dụng cấu trúc đường dẫn tĩnh tối ưu cho Google Index:
/{slug}.html Ví dụ: /chien-su-iran-khoet-sau-bat-dong.html
Khi bài viết được xuất bản, hệ thống tự động:
- Lưu Database & Đẩy vào Queue.
- Render file HTML tĩnh & AMP.
- Cập nhật Redis Cache & Purge CDN.
Score = Views + (Comments * 5) + (Shares * 8) + FreshScore
Đảm bảo tính thời sự bằng cách giảm điểm theo thời gian:
Trending = (Views + Comments5 + Shares8) / (Hours + 2)^1.5
- Database: Bao gồm các bảng chính như articles, categories, tags, media, analytics.
- Redis Usage: Quản lý article:views, trending:today, trending:week.
- Search Engine: Sử dụng Laravel Scout kết nối với Meilisearch.
- PHP 8.2+, MySQL 8.0+, Redis.
- git clone https://github.com/trunglt706/PressKit.git
- cd presskit
- composer install
- cp .env.example .env
- php artisan key:generate
- php artisan migrate
- php artisan serve
License: MIT
Author: PressKit Team