Hướng dẫn tinh chỉnh Nginx để nâng cao hiệu suất VPS

May 5th, 2014 by 2 Comments | Last Modified: August 11th, 2014

Website của bạn ngày càng phát triển, lượng truy cập ngày một tăng và bạn thấy VPS của mình không đủ đáp ứng với lượng truy cập hiện tại. Bạn hãy thử tối ưu cho VPS của mình xem sao. Cách tối ưu nó không khó và bạn sẽ thấy website của mình hoạt động mượt mà hơn chỉ sau một ít phút config đơn giản. B viết dưới đây sẽ giúp bạn tìm hiểu và tự config VPS sủ dụng Nginx để cho nó có thể phục vụ được nhiều lượt truy cập hơn trước khi bạn quyết định nâng cấp cấu hình cho VPS.
Những điều chúng ta làm sẽ là chỉnh và thêm một vài thông số vào file nginx.conf. File này bạn có thể tìm thấy ở: /etc/nginx/nginx.conf
Trước khi làm bạn hãy backup nó lại. Backup xong, bạn có thể sử dụng text editor bạn hay sử dụng để chỉnh sửa nó. Mình hay sử dụng gedit để làm việc này.

Nếu bạn sử dụng servertut thì Nginx đã được tối ưu hóa rồi nha. Bạn chỉ cần cài đặt và chạy website trên VPS thôi. Xem cách cài đặt Servertut lên VPS tại đây.

Bạn chú ý các thông số trong file nginx.conf nha:

Hướng dẫn tinh chỉnh Nginx để nâng cao hiệu suất VPS

Hướng dẫn tinh chỉnh Nginx để nâng cao hiệu suất VPS

# Bạn nên đặt Worker Process tùy thuộc vào số lõi CPU của VPS. Nếu 1 lõi thì ta đặt giá trị 1, 2 lõi đặt giá trị 2… Tuy nhiên với các kernel mới về sau này, nó tự động nhận được số lõi CPU, ta chỉ cần cho worker process giá trị auto.

worker_processes = auto;

# Đặt giá trị worker rlimit nofile

worker_rlimit_nofile 100000;

# Chỉ cho log critical errors

error_log /var/log/nginx/error.log crit

# Đặt giá trị worker connections

worker_connections 4000;

# optmized to serve many clients with each thread, essential for linux
use epoll;

# Chấp nhận nhiều nhất kết nối có thể, nếu bạn để giá trị quá thấp, sẽ có nhiều kết nối không thực hiện được.

multi_accept on;
}

# Đặt cache cho trình duyệt
open_file_cache max=200000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;

# Giảm IO của ổ cứng bằng cách tắt access logs
access_log off;

# Các giá trị khác:
sendfile on;
tcp_nopush on;
tcp_nodelay on;

# server sẽ tự đóng kết nối sau 30 g
keepalive_timeout 30;

# Số lượng kết nối sẽ được đặt ở chế độ keep-alive
keepalive_requests 100000;

# sau khi đóng kết nối từ máy user, VPS sẽ tự động free RAM
reset_timedout_connection on;

# Giới hạn thời gian request – mặc định 60
client_body_timeout 10;

# Nếu user ngừng kết nối, free RAM – mặc định 60
send_timeout 2;

# Nén dữ liệu trước khi tải để tăng tốc độ truy cập cho user
gzip on;
gzip_min_length 10240;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml;
gzip_disable “MSIE [1-6]\.”;

Bây giờ bạn có thể lưu lại.
Khởi động lại Nginx để config có tác dụng

service nginx restart

Chúc bạn thành công.

2 Comments
  1. Posted by Annie
    • Posted by Nguyễn Oánh

Bình luận của bạn

Bạn vui lòng sử dụng tên thật hay nickname và không sử dụng từ khóa trong phần điền tên. Nếu vi phạm, mình xin phép không cho hiện comment trên site. Cảm ơn bạn.



:xauho: :roll: :oops: :nono: :mrgreen: :mofat: :macf: :data: :cry: :claps: :bye: :batfa: :ZZZM: :D ::tholoz: ::meney: ::kiss:: ::fulltime: ::cuoiroile:: ::chugun: ::chenhca: ::cave: ::bank: ::CRTTS: :-| :-D :-? 8)
KHUYẾN MẠI ĐẶC BIỆT ! VULTR Đang Tặng 52 USD Cho Tài Khoản Mới ! GET COUPON NOW
Hello. Add your message here.