Nginx
Nguồn tham khảo: Udemy — Developer to Architect Series
Mục tiêu bài viết
- Hiểu Nginx có những chức năng gì.
- Nắm điểm khác biệt quan trọng giữa Nginx và Apache.
- Biết khi nào nên chọn Nginx thay vì Apache.
1) Nginx làm được gì?
NGINX
│
┌────────────┼────────────┐
▼ ▼ ▼
Static Dynamic Reverse Proxy
Content Content + Cache
Nginx có chức năng gần giống Apache — serve static content, dynamic content, reverse proxy và content caching.
2) So sánh Apache vs Nginx
| Apache | Nginx | |
|---|---|---|
| Static Content | ✅ | ✅ |
| Dynamic Content | ✅ nhỉnh hơn | ✅ |
| Reverse Proxy | ⚠️ Không tối ưu | ⭐ Rất mạnh |
| Content Cache | ✅ | ✅ |
3) Điểm nổi bật của Nginx
Nginx được thiết kế đặc biệt để trở thành một Reverse Proxy tốt — đây là điểm Nginx vượt trội so với Apache.
Clients
│
▼
┌──────────────┐
│ NGINX │ ⭐ Reverse Proxy + Cache
└──────┬───────┘
│
┌─────┼─────┐
▼ ▼ ▼
App1 App2 App3
Nhờ kiến trúc event-driven (thay vì thread-per-connection như Apache), Nginx xử lý được số lượng connections cực lớn với ít memory hơn — đây chính là lý do Nginx scale tốt hơn Apache trong vai trò reverse proxy.
Tóm tắt
Apache ≈ Nginx về chức năng, nhưng Nginx nổi bật ở Reverse Proxy + Caching, còn Apache có lợi thế nhỏ về dynamic content.
Khi cần reverse proxy cho hệ thống lớn → chọn Nginx.