Hướng Dẫn Kiểm Tra Số Lượng Kết Nối Bằng Nginx

Trong bài viết này chúng ta hãy tìm hiểu cách kiểm tra số lượng kết nối bằng Nginx, những trường hợp cần kiểm tra số lượng kết nối là khi bạn thấy website bị chậm, CPU và RAM tăng cao, nghi ngờ bị DDOS nhẹ.

Hướng dẫn thực hiện

1. Bật Stub Status trong Nginx

Ở trong Nginx có một module có sẵn được gọi là Nginx Stub Status cho phép ta kiểm tra số lượng kết nối đang hoạt động, biết đọc / ghi / chờ bao nhiêu request. Thêm đoạn cấu hình sau vào file cấu hình của domain

vNode Tutorial
location /nginx_status {
        stub_status;
        access_log off;

        # Thay bằng IP public của mình để có thể cho phép truy cập
        allow 127.0.0.1;
        deny all;
    }

1.21 1 2025

 

Sau đó kiểm tra và khởi động lại Nginx

vNode Tutorial
nginx -t
systemctl restart nginx

 

2. Kiểm tra trạng thái kết nối

Truy cập https://domain.com/nginx_status từ địa chỉ IP chỉ cho phép xem location này

2.21 1 2025

 

  • Active connections: Đây là tổng số kết nối đang được mở giữa Client và Nginx tại thời điểm kiểm tra
  • Server accepts handled requests: Dòng này là tiêu đề, không phải là số liệu thực
  • Ba con số bên dưới từ trái qua phải lần lượt là: accepts, handled, requests:

+ Accepts: Tổng số kết nối TPC chấp nhận thành công kể từ khi khởi động

+ Handled: Tổng số kết nối đã được xử lý bởi worker process

+ Requests: Tổng số HTTP request mà Nginx đã xử lý

+ Reading: Số kết nối mà Nginx đang đọc request từ Client

+ Writing: Số kết nối mà Nginx đang gửi response cho Client

+ Waiting: Số kết nối keep-alive, hiện không truyền dữ liệu, vẫn được giữ để sử dụng tiếp

 

Kết luận

Việc kiểm tra số lượng kết nối trên Nginx giúp quản trị viên nắm bắt chính xác tình trạng hoạt động của server theo thời gian thực, từ đó phát hiện được các vấn đề cũng như là đánh giá hiệu quả xử lý để tối ưu cấu hình phù hợp. Chúc các bạn thành công!