Представь 2002 год. Офис крупного российского портала. Гудят серверные стойки, пахнет пылью и озоном. Apache, тогдашний король веба, захлёбывается. На каждое новое подключение пользователя – новый «тред» (поток) или процесс. Память течёт, сервер уходит в «своп» и падает. Системный администратор Игорь Сысоев смотрит на это и решает: «Хватит». Он садится и в свободное от работы время начинает писать свой веб-сервер. Он ещё не знает, что этот код через 15 лет купят за $670 миллионов, а работать на нём будет Netflix, Dropbox и твой любимый сайт с рецептами.
Магия под капотом: один официант против тысячи
Главная фишка Nginx (произносится «Энжин-Экс») – решение «проблемы C10k», то есть как серверу обслужить 10 000 одновременных соединений. Старый добрый Apache работал по принципу «один клиент – один процесс». Это как ресторан, где к каждому столику приставлен отдельный официант. 10 000 столиков – 10 000 официантов. Память кончится мгновенно.
Nginx – это один, но невероятно шустрый официант-супермен. Он использует неблокирующую, событийно-ориентированную архитектуру. Говоря по-человечески, он не ждёт, пока клиент доест свой суп. Он постоянно опрашивает системные «звоночки» (механизмы вроде epoll в Linux или kqueue в BSD): «Кто готов отдать заказ? А кто принять?». Один рабочий процесс Nginx легко держит десятки тысяч соединений. Чаще всего его ставят как «щит» – обратный проксии балансировщик нагрузки. Он быстро раздаёт картинки (статику) и проксирует сложные запросы к «толстым» серверам приложений.
Контекст: интернет, который стал «тяжёлым»
На дворе начало 2000-х. Интернет «пухнет». Трафик растёт, появляются тяжёлые порталы, баннерокрутилки, первые соцсети. Apache был написан в другую, более «лёгкую» эпоху. Он не был готов к таким нагрузкам. Сысоев писал Nginx не для продажи, а для себя, для решения конкретной «боли» на работе. Он выпустил его в мир в 2004 году под свободной лицензией. Это был идеальный тайминг. Админы по всему миру схватились за него, потому что он был бесплатным, быстрым и решал их главную проблему – падение серверов под нагрузкой.
Люди: тихий гений и визионер-бизнесмен
В центре истории – Игорь Сысоев. Классический «тихий» гений, системный инженер, который годами пилил свой проект в одиночку, пока работал в «Рамблере». Он долго не хотел никакой коммерции. Но в 2011 году к нему присоединился Максим Коновалов, который увидел в этом бизнес-потенциал. Они вместе основали Nginx, Inc. в Сан-Франциско, чтобы продавать платную версию (Nginx Plus) и поддержку корпорациям. Сысоев оставался техническим мозгом, Коновалов строил бизнес. Финал истории – в 2019-м их покупает американский гигант F5.
Битва титанов: Nginx против Apache
Главным «боссом» на ринге был Apache HTTP Server. Он был (и остаётся) невероятно гибким, модульным, как конструктор LEGO. Но за гибкость платил производительностью. Nginx же был как гоночный болид – делал меньше вещей, но делал их молниеносно. По статистике W3Techs, сегодня Nginx держит ~33% всего веба. Но самое интересное – в топах. Если взять 10 000 самых посещаемых сайтов, доля Nginx улетает далеко за 50%. Он стал стандартом де-факто для высоконагруженных систем.
Nginx в твоём браузере
Где стоит Nginx? Проще сказать, где его нет. Он стоит «лицом» к интернету почти у всех. Netflixиспользует его для стриминга видео. Dropbox – для раздачи файлов. Почти каждый сайт на WordPress (а это 40% интернета) использует Nginx как прокси для ускорения. В мире микросервисов он стал «швейцарским ножом» для управления трафиком (API Gateway). По сути, если ты смотришь сериал или качаешь приложение, ты с 99% вероятностью стучишься в Nginx.
Не только Nginx: три других русских «выстрела»
Nginx – это «кейс мечты»: глобальный успех из России и гигантский экзит ($670 млн). Но это не единственный путь.
1. Kotlin: Питерская компания JetBrains сделала язык программирования, который Google в 2017-м назвал официальным языком для Android. Они не продались, а «продали» стандарт целой индустрии.
2. Telegram: Продукт с российскими основателями, который дорос до 950+ миллионов пользователей (к 2024-му) и показал, как можно построить глобальную продукт-платформу.
3. Kaspersky: Обратная сторона медали. Блестящая технология, но в 2024-м её продажи в США запретили по соображениям нацбезопасности. Это показало, что на глобальном рынке чистой технологии недостаточно – в игру вступает геополитика.
Уроки на миллиард
Nginx до сих пор «тот самый кирпич», из которого строят веб. Идеи Сысоева о событийно-ориентированной архитектуре стали мейнстримом. Урок для российских стартапов был мощный. Во-первых, Open Source – это лучший маркетинг. Во-вторых, можно построить продукт на миллиард, сидя в Подмосковье. В-третьих, юридическая структура (Nginx, Inc. была в США) и готовность к регуляторным рискам важны не меньше, чем чистый код.
Инженерный дзен
Для меня история Nginx – это классический «инженерный дзен». Человек не пытался «сделать стартап» или «заработать миллионы». Он просто системный администратор, которому надоело, что всё падает. Он сел и решил проблему. А оказалось, что эта проблема была у всего мира. Это ирония судьбы: самый коммерчески успешный российский софтверный продукт (в плане экзита) был создан человеком, который меньше всего думал о коммерции.
Финальный вопрос
Как думаешь, какая простая инженерная «боль», которая мучает тебя сегодня, может превратиться в следующий Nginx?