Giới thiệu Nginx

Nginx (được phát âm là “engine-ex”) là 1 máy chủ reverse proxy mã nguồn mở cho các giao thức HTTP, HTTPS, SMTP, POP3 và IMAP, cũng như là 1 máy chủ cân bằng tải (load balancer), HTTP cache và web. Dự án Nginx được bắt đầu với việc tập trung vào tính đồng thời cao, hiệu năng cao và sử dụng tài nguyên thấp.

Nginx được phát triển bởi Igor Sysoev vào nằm 2002, được phân phối ra công chúng lần đầu vào nằm 2004.

Nginx là 1 trong số ít những máy chủ được viết để giải quyết vấn đề C10K. Các máy chủ web truyền thống xử lý các yêu cầu dựa trên luồn (thread), tức là mỗi khi máy chủ web nhận được 1 yêu cầu mới, nó sẽ tạo ra 1 luồn xử lý mới để xử lý cho yêu cầu này, và cứ thế khi số lượng các yêu cầu gửi đến máy chủ web ngày càng nhiều thì số lượng các luồn xử lý này trong máy chủ sẽ ngày càng tăng. Và điều này dẫn đến việc thiếu hụt tài nguyên cấp cho các luồn xử lý trên.

Không giống với các máy chủ web truyền thống,  Nginx không dựa trên luồn (thread) để xử lý yêu cầu. Thay vào đó, nó sử dụng 1 kiến trúc bất đồng bộ hướng sự kiện linh hoạt . Kiến trúc này sử dụng ít, nhưng quan trọng hợn, là lượng bộ nhớ có thể dự đoán khi hoạt động.

Nginx hoạt động dưới giấy phép 2-clause BSD, trên các nền tảng Linux, BSD, Mac OS X, Solaris, AIX, HP-UX cũng như các hệ điều hành dựa trên Unix.

Hiện nay, có khoảng 20,2 % các website trên Internet đang sử dụng Nginx là máy chủ web.

Web Server Usage Statistic

1 số website lớn đang sử dụng Nginx như Netflix, Hulu, Pinterest, CloudFare, Airbnb, WordPress.com, GitHub, SoundCloud, Zynga, Eventbrite, Zappos, Media Temple, Heroku, RightScale, Engine Yard, Facebook.

Related Post