NGINX là một trong những phần mềm quán quân trong lĩnh vực web server, proxy ngược, và cân bằng tải. Với hiệu năng đáng kinh ngạc, nó đã trở thành một lựa chọn hàng đầu cho nhiều doanh nghiệp và nhà phát triển. Hãy cùng tìm hiểu về cách hoạt động, ứng dụng, và lý do tại sao NGINX lại được yêu thích như vậy.
NGINX (đọc là “engine-x”) được phát triển bởi Igor Sysoev và phát hành lần đầu vào năm 2004. Ban đầu, nó được thiết kế để giải quyết vấn đề C10K (đó là, quản lý 10.000 kết nối đồng thời). Hiện nay, NGINX đã trở thành một công cụ hỗ trợ nhiều chức năng, bao gồm:
NGINX sử dụng mô hình event-driven thay vì mô hình truyền thống dựa trên luồng (threads). Điều này giúp nó quản lý tốt các kết nối đồng thời mà không tăng đáng kể tài nguyên.
NGINX phù hợp cho nhiều nhu cầu từ web server nhỏ đến hạ tầng phức vụ web lưu lượng lớn.
Ngoài HTTP/HTTPS, NGINX còn hỗ trợ proxy cho các giao thức khác như SMTP, IMAP, POP3.
Trên Ubuntu, NGINX có thể được cài đặt bằng lệnh:
sudo apt update
sudo apt install nginx
Khởi chạy dịch vụ NGINX:
sudo systemctl start nginx
Kiểm tra trạng thái:
sudo systemctl status nginx
Mở trình duyệt và truy cập http://localhost
để xem trang mặc định.
NGINX có khả năng chuyển request từ client đến backend server như Node.js hoặc PHP.
Cấu hình proxy ngược:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
NGINX phân bố tải các request đến nhiều server backend:
upstream backend {
server backend1.example.com;
server backend2.example.com;
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
NGINX có thể phục vụ file tĩnh như HTML, CSS, JS một cách nhanh chóng:
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
index index.html;
}
}
NGINX là một công cụ đa năng và hiệu quả cho các nhà phát triển và doanh nghiệp. Với hiệu năng cao, tính linh hoạt, và khả năng tích hợp cao, NGINX xứng đáng là một trong những lựa chọn tốt nhất cho mời hạ tầng web hiện đại.
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE