18 лучших вопросов и ответов на собеседовании по Nginx (2025 г.)

Вот вопросы и ответы на собеседовании по Nginx для новичков, а также для опытных кандидатов в разработчики, которые смогут получить работу своей мечты.


1) Объясните, что такое Nginx?

Nginx — это веб-сервер и обратный прокси-сервер для протоколов HTTP, HTTPS, SMTP, POP3 и IMAP.

Бесплатная загрузка PDF-файла: Вопросы для собеседования по Nginx


2) Упомяните некоторые особенности Nginx?

Специальные возможности сервера Nginx включают в себя

  • Обратный прокси/балансировщик нагрузки L7
  • Встроенный интерпретатор Perl
  • Бинарное обновление на лету
  • Полезно для перезаписи URL-адресов и потрясающей поддержки PCRE.

3) Укажите, в чем разница между Nginx и Apache?

Nginx Apache
  • Nginx — веб-сервер, основанный на событиях
  • Все запросы обрабатываются одним потоком.
  • Nginx избегает идеи дочерних процессов.
  • Nginx напоминает скорость
  • Nginx лучше, когда дело касается потребления памяти и соединения.
  • Nginx лучше, если вам нужна балансировка нагрузки
  • Для PHP Nginx может быть предпочтительнее, поскольку он поддерживает PHP внутри.
  • Nginx не поддерживает такие ОС, как IBMi и OpenVMS.
  • Nginx поставляется только с основными функциями
  • Производительность и масштабируемость Nginx не зависят от оборудования
  •  Apache — это сервер, основанный на процессах
  • Один поток обрабатывает один запрос.
  • Apache основан на дочерних процессах
  • Апачи напоминают силу
  • Apache не на должном уровне, когда дело касается потребления памяти и соединения.
  • Apache будет отклонять новые соединения, когда трафик достигнет предела процессов
  • Apache поддерживает PHP, Python, Perl и другие языки с помощью плагинов. Это полезно, когда приложение основано на Python или Ruby.
  • Apache поддерживает гораздо более широкий спектр ОС
  • Apache предоставляет гораздо больше функций, чем Nginx.
  • Apache зависит от аппаратных компонентов, таких как процессор и память.

4) Объясните, как Nginx может обрабатывать HTTP-запросы?

Nginx использует шаблон реактора. Основной цикл событий ожидает OS для сигнализации о событии готовности - так, чтобы данные были доступны для чтения из сокета, после чего они считывались в буфер и обрабатывались. Один поток может обслуживать десятки тысяч одновременных соединений.


5) Как в Nginx можно запретить обработку запросов с неопределенными именами серверов?

Сервер, который просто отбрасывает запросы, можно определить как  

Server {

listen                80;

server_name  " " ;

return              444;

}

Здесь имя сервера сохраняется в виде пустой строки, которая будет соответствовать запросу без поля заголовка «Host», а возвращается специальный нестандартный код Nginx 444, который завершает соединение.

Вопросы для собеседования по Nginx
Вопросы для собеседования по Nginx

6) В чем преимущество использования «обратного прокси-сервера»?

Обратный прокси-сервер может скрыть присутствие и характеристики исходного сервера. Он действует как промежуточное звено между интернет-облаком и веб-сервером. Это хорошо по соображениям безопасности, особенно когда вы используете услуги веб-хостинга.


7) Укажите, как лучше всего использовать сервер Nginx?

Лучшее использование сервера Nginx — это развертывание динамического HTTP-контента в сети с использованием SCGI, серверов приложений WSGI и обработчиков FastCGI для сценариев. Он также может служить балансировщиком нагрузки.


8) Укажите, что такое главный и рабочий процессы на сервере Nginx?

  • Основные процессы: Он считывает, оценивает конфигурацию и поддерживает рабочие процессы.
  • Рабочие процессы: Фактически он занимается обработкой запросов.
Вопросы для собеседования по Nginx
Вопросы для собеседования по Nginx

9) Объясните, как запустить Nginx через другой порт, кроме 80?

Чтобы запустить Nginx через другой порт, вам нужно перейти в /etc/Nginx/sites-enabled/ и, если это файл по умолчанию, вам нужно открыть файл с именем «default». Отредактируйте файл и укажите нужный порт. Как сервер {слушайте 81; }


10) Объясните, можно ли заменить ошибки Nginx типа 502 на 503?

  • 502= Неверный шлюз
  • 503= Сервер перегружен

Да, это возможно, но вы должны убедиться в этом. fastcgi_intercept_errors установлено значение ON и используйте директиву страницы ошибок.  

Location / {

fastcgi_pass 127.0.01:9001;

fastcgi_intercept_errors on;

error_page 502 =503/error_page.html;

#...

}

11) Объясните, как в Nginx можно сохранять двойные слэши в URL-адресах?

Чтобы сохранить двойные косые черты в URL-адресах, вам необходимо использовать merge_slashes_off; Синтаксис: merge_slashes [вкл выкл] По умолчанию: merge_slashes в контексте: http, сервер.


12) Объясните, для чего используется ngx_http_upstream_module?

Модуль ngx_http_upstream_module используется для определения групп серверов, на которые можно ссылаться с помощью директив fastcgi pass, proxy pass, uwsgi pass, memcached pass и scgi pass.


13) Объясните, в чем проблема С10К?

Проблема C10K связана с тем, что сетевой сокет не может одновременно обрабатывать большое количество клиентов (10,000 XNUMX).


14) Укажите, для чего используются директивы stub_status и sub_filter?

  • Директива Stub_status: эта директива используется для определения текущего статуса Nginx, например текущего активного соединения, общего количества принятых и обработанных соединений, текущего количества соединений чтения/записи/ожидания.
  • Директива Sub_filter: Он используется для поиска и замены контента в ответ, а также для быстрого исправления устаревших данных.

15) Объясните, поддерживает ли Nginx сжатие запроса в восходящий поток?

Вы можете сжать запрос до восходящего потока с помощью модуля Nginx. пистолет Модуль Gunzip — это фильтр, который распаковывает ответы с помощью «Кодировка контента: gzip» для клиентов или серверов, которые не поддерживают метод кодирования «gzip».


16) Объясните, как можно узнать текущее время в Nginx?

Чтобы получить текущее время в Nginx, вам нужно использовать переменные из модуля SSI: $date_gmt и $date_local.

  • Proxy_set_header THE-TIME $date_gmt;

17) Объясните, для чего нужен ключ –s в Nginx Server?

Для запуска исполняемого файла Nginx используется параметр –s.


18) Объясните, как добавлять модули в Nginx Server?

В процессе компиляции необходимо выбирать модули Nginx, поскольку такой выбор модулей во время выполнения не поддерживается Nginx.

Эти вопросы для собеседования также помогут вам в устной речи.

Поделиться

4 комментариев

  1. Аватара Вену Гопал Чоудхари говорит:

    Я заметил в вашей статье неверную формулировку.

    8) Укажите, что такое главный и рабочий процессы на сервере Nginx?

    Пожалуйста, обновите его.
    Главный процесс поддерживает конфигурацию, а рабочие выполняют процесс.

    1. Аватара Guru99 говорит:

      Есть некоторое недоразумение, ответ подразумевает то же самое.

    2. Аватара Бибху Бал говорит:

      правильно, пожалуйста, обновите его. Главный процесс поддерживает конфигурацию и чтение, а также контролирует и поддерживает рабочий процесс, когда рабочий выполняет процесс.

Оставьте комментарий

Ваш электронный адрес не будет опубликован. Обязательные поля помечены * *