«Это шестой день моего участия в первом испытании обновлений 2022 года. Подробную информацию о мероприятии см.:Вызов первого обновления 2022 г.".
1. Энциклопедия Байду
Nginx — это высокопроизводительный веб-сервер HTTP и обратный прокси-сервер, который также предоставляет услуги IMAP/POP3/SMTP. Nginx был разработан Игорем Сейсуевым для второго по посещаемости сайта в России Rambler.ru, а первая общедоступная версия 0.1.0 была выпущена 4 октября 2004 года.
Он выпускает исходный код под лицензией, подобной BSD, и известен своей стабильностью, богатым набором функций, простыми файлами конфигурации и низким потреблением системных ресурсов.
Nginx — это легкий веб-сервер и прокси-сервер электронной почты (IMAP/POP3), выпущенный по протоколу, подобному BSD. Его характеристики заключаются в том, что он занимает меньше памяти и обладает сильными возможностями параллелизма.На самом деле возможности параллелизма Nginx лучше среди веб-серверов того же типа.Пользователями веб-сайтов Nginx в материковом Китае являются: Ali, Baidu, Jingdong, Sina, Netease , Тенсент и др.
2. Nginx как веб-сервер
Nginx может использоваться как веб-сервер для статических страниц, а также предоставляет динамические языки протокола CGI, такие как perl, php и т. д. Но джава не поддерживается. Java можно сделать, только работая с tomcat. Nginx специально разработан для оптимизации производительности. Производительность является наиболее важным фактором. Реализация уделяет большое внимание эффективности и может выдерживать высокие нагрузки последипломных экзаменов. Согласно отчетам, он может поддерживать до 50 000 одновременных подключений.
3. Логическая схема обработки запроса Nginx
В-четвертых, преимущества Nginx
- Возможно большое количество одновременных подключений;
- меньше потребление памяти;
- бюджетный;
- Файл конфигурации очень прост;
- Поддержка перезаписи (можно разделить HTTP-запросы на разные группы внутренних серверов в соответствии с разными доменными именами и URL-адресами);
- Встроенная функция проверки работоспособности;
- Экономия полосы пропускания (поддержка сжатия GZIP, вы можете добавлять заголовки, кэшированные браузером локально);
- Высокая стабильность (для обратного прокси вероятность простоя минимальна);
- Поддержка горячего развертывания;
Пять, сценарии применения Nginx
Введение в форвардных агентов
Если представить себе Интернет за пределами локальной сети как огромную библиотеку ресурсов, клиентам в локальной сети необходимо получить доступ к Интернету через прокси-сервер, который называется прямым прокси-сервисом.
1. Обратный прокси
Клиент не знает о прокси, потому что клиент может получить к нему доступ без какой-либо настройки, нам нужно только отправить запрос обратному прокси-серверу, и обратный прокси-сервер выбирает целевой сервер для получения данных, а затем возвращает его на В настоящее время обратный прокси-сервер и целевой сервер являются внешними серверами, раскрывающими адрес прокси-сервера и скрывающими реальный IP-адрес сервера.
2. Балансировка нагрузки
Один сервер не может решить эту проблему, мы увеличиваем количество серверов, а затем распределяем запросы на каждый сервер, вместо того, чтобы концентрировать запросы на одном сервере, мы распределяем запросы на несколько серверов, это балансировка нагрузки.
3. Динамическое и статическое разделение
Чтобы ускорить анализ веб-сайта, динамические страницы и статические страницы могут анализироваться разными серверами, чтобы увеличить скорость анализа и снизить нагрузку на исходный отдельный сервер.
6. Общие команды Nginx
1. Старт
Формат запуска кода запуска: Установка NGINX Адрес Address - C NGINX Адрес конфигурации
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2. Спокойно остановитесь
(1) Просмотрите номер процесса
ps -ef|grep nginx (2) Убить процесс
kill -QUIT 2072
3. Быстрая остановка
(1) Просмотрите номер процесса
ps -ef|grep nginx (2) Убить процесс
kill -TERM 2132
4. Принудительная остановка
pkill -9 nginx
5. Перезапустите
(1) Убедитесь, что файл конфигурации nginx верен.
Способ 1. Войдите в каталог установки nginx sbin и введите команду ./nginx -t
См. следующее отображение синтаксиса nginx.conf в порядке.
nginx.conf test is successful
Способ 2: добавьте -t перед командой запуска -c
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
6. Перезапустите службу Nginx.
Способ 1. Войдите в исполняемый каталог nginx sbin и введите команду ./nginx -s reload
Способ 2. Найдите текущий номер процесса nginx, а затем введите команду: kill -HUP номер процесса, чтобы перезапустить службу nginx.
Семь, файл конфигурации Nginx
1. Найдите расположение файла конфигурации:
cd /usr/local/nginx/conf/nginx.conf
2, содержимое файла конфигурации
- Глобальный блок: инструкции по настройке общей работы сервера, такие как worker_processes 1, конфигурация для обработки параллелизма;
- блок событий: влияет на сетевое соединение между сервером Nginx и пользователем, например, worker_connections 1024, максимальное количество поддерживаемых соединений — 1024;
- Блок http также состоит из двух частей: серверный блок http global block;
Восемь, пример конфигурации Nginx — пример обратного прокси
1. Осознайте эффект
Откройте браузер и введите адрес в адресную строку браузераwww.123.com, перейти наГлавная страница системы Linux tomcat
2. Подготовка
- Установите tomcat в системе liunx, используйте порт по умолчанию 8080 * установочный файл tomcat в системе liunx, распакуйте * в каталог bin tomcat, ./startup.sh для запуска сервера tomcat
- Порты, открытые для внешнего мира firewall-cmd --add-port=8080/tcp --permanent firewall-cmd --reload Просмотр открытых номеров портов firewall-cmd --list-all
- Доступ к серверу tomcat через браузер в системе Windows
3. Анализ процесса доступа
4. Конкретная конфигурация Первым шагом является настройка соответствующей связи между доменным именем и ip в файле хоста системы Windows.
(1) Добавьте содержимое в файле хоста
192.168.17.129 www.123.com
Второй шаг — настроить переадресацию запросов в nginx (настройка обратного прокси)
server{
listen:80;
server_name 192.168.100.1;
location / {
root html;
proxy pass http://127.0.0.1:8080;
index index.html index.htm;
}
}
5. Заключительный тест
Девять, принцип Nginx
1. мастер и работник
2. Как работают работники
3. Один мастер и несколько рабочих выгодны
- Вы можете использовать nginx –s reload для горячего развертывания и использовать nginx для горячего развертывания;
- Каждый рабочий процесс является независимым процессом.Если возникает проблема с одним из рабочих процессов, другие рабочие процессы независимы и продолжают конкурировать за выполнение процесса запроса, не вызывая прерывания обслуживания.
4. Сколько рабочих мест подходит для установки
Наиболее целесообразно иметь такое же количество рабочих, как и количество ЦП на сервере.
5. Количество подключений worker_connection
Первый: Сколько подключений вокера занято отправкой запроса? Ответ: 2 или 4;
Второй: у nginx один мастер и четыре воркера, каждый воркер поддерживает максимальное количество подключений 1024, какое максимальное количество поддерживаемых одновременных подключений?
Максимальное одновременное количество обычного статического доступа: Worker_Connections * Worker_Processes / 2;
И если HTTP используется в качестве обратного прокси,
Максимальное число одновременных действий должно быть worker_connections * worker_processes/4;