>
>
Самая короткая статья о проверке nginx

Андрей Карпов
Статей: 643

Самая короткая статья о проверке nginx

К нам много раз обращались с предложением проверить проект nginx. Мы делали это около года назад. Ничего интересного не нашли. Недавно мы вновь проверили этот проект и опять ничего не нашли. Так как нам продолжают спрашивать про этот проект, то я решил написать маленькую заметку про проверку nginx.

nginx [engine x] - это HTTP-сервер и обратный прокси-сервер, а также почтовый прокси-сервер, написанный Игорем Сысоевым. Уже длительное время он обслуживает серверы многих высоконагруженных российских сайтов, таких как Яндекс, Mail.Ru, ВКонтакте и Рамблер. Согласно статистике Netcraft nginx обслуживал или проксировал 17.82% самых нагруженных сайтов в апреле 2014 года.

Сайт проекта: nginx.

Wikipedia: nginx.

Мы проверили проект nginx с помощью статического анализатора PVS-Studio. И не нашли подозрительных фрагментов. Обычно, так не бывает. Но в случае nginx мы действительно не смогли найти ошибок.

Ошибки не найдены по следующим причинам:

  • Самое главное, что код проекта очень качественен и хорошо протестирован. Он широко используется и как следствие, если в нём и появляются ошибки, то они быстро обнаруживаются.
  • Проект совсем маленький. Размер исходного кода меньше 4 мегабайт.
  • Этот проект не проверял только ленивый. Там уже побывали анализаторы Coverity Scan, Klocwork Insight и думаю многие другие.

Означает, ли это, что достаточно писать качественный код и статический анализатор не нужен? Нет. Во-первых, ошибки найденные, например, с помощью Coverity говорят, что анализировать проекты полезно. Во-вторых, польза от анализа максимально проявляет себя при регулярном использовании инструментов. Разовая проверка мало о чём говорит. Уверен, что при регулярном использовании PVS-Studio сэкономил бы массу сил разработчикам, выявляя опечатки и прочие недочёты.

Итого: nginx очень качественный проект. Поздравляем его разработчиков и желаем им всего наилучшего.