Pull to refresh
282
0
Валентин Бартенев @VBart

Руководитель разработки ООО «Веб-Сервер»

Send message

Анонс публичной бета-версии NGINX Amplify

Reading time 5 min
Views 19K


Мы рады представить бету NGINX Amplify, нашего нового инструмента для мониторинга NGINX и NGINX Plus. Используя NGINX Amplify, вы сможете отслеживать и контролировать NGINX и приложения, которые он обслуживает. Новый инструмент позволит быстро решать проблемы с производительностью и доступностью отдельных сервисов и инфраструктуры в целом. На текущий момент он включает в себя гибко настраиваемую панель мониторинга с механизмом оповещений, а также систему автоматических рекомендаций по оптимизации производительности и улучшению безопасности.

Узнать больше и увидеть NGINX Amplify в действии можно записавшись на онлайн вебинар, который пройдет 13 июля в 20:00 по московскому времени.

Также, вы можете начать бесплатно использовать NGINX Amplify прямо сейчас, пройдя регистрацию.
Подробности
Total votes 26: ↑23 and ↓3 +20
Comments 64

HTTP/2.0 — Халтура от IETF: плохой протокол, плохая политика

Reading time 5 min
Views 21K
Давным давно, в начале 1989 года, Рональд Рейган ещё был президентом, хотя до окончания его срока оставалось 19½ дней. А перед тем, как 1989 год подошел к концу, родилась Тейлор Свифт, а Андрей Сахаров и Сэмюэл Беккет скончались.

В долгосрочной перспективе, наиболее значительным событием 1989 скорее всего станет то, что Тим Бернерс-Ли заложил основы протокола HTTP и назвал результат «World Wide Web». (Одно примечательное свойство этого имени состоит в том, что аббревиатура «WWW» имеет в два раза больше слогов и требует больше времени для произнесения.)

Протокол HTTP, предложенный Тимом, работал в 10-мегабитных сетях с коаксиальными кабелями, а его компьютером был NeXT Cube с частотой 25 МГц. 26 лет спустя, в моем ноутбуке установлен процессор в сотни раз быстрее, а оперативной памяти в тысячи раз больше, чем было на компьютере Тима, но протокол HTTP всё тот же.

Несколько дней назад рабочая группа IESG (The Internet Engineering Steering Group) запросила последние комментарии по новому протоколу HTTP/2.0 (https://tools.ietf.org/id/draft-ietf-httpbis-http2) перед тем, как утвердить его в качестве официального стандарта.

[Спустя пару месяцев с минимальными изменениями стандарт был утвержден. — прим. пер.]
Читать дальше →
Total votes 50: ↑44 and ↓6 +38
Comments 79

Анонс NGINX 1.10 и 1.11

Reading time 5 min
Views 25K
Disclaimer: оригинальная статья, перевод которой здесь представлен, служит цели объявить о выходе новых старших версий продукта, рассказать в целом о политике версионирования и успехах за прошедший год. Если вас интересуют сухие технические подробности, то рекомендую смотреть полный лог изменений, либо его выжимку с кратким пояснением в конце статьи.

Мы рады представить NGINX 1.10 и 1.11. Эти номера версий обозначают стабильную (stable) и основную (mainline) ветки бесплатных открытых выпусков, над которыми мы сфокусируем наши усилия на протяжении следующих 12 месяцев.

NGINX версии 1.10.0 уже вышел, а будущий выпуск основной ветки будет под номером 1.11.0.
Читать дальше →
Total votes 43: ↑43 and ↓0 +43
Comments 36

Пулы потоков: ускоряем NGINX в 9 и более раз

Reading time 15 min
Views 87K
Как известно, для обработки соединений NGINX использует асинхронный событийный подход. Вместо того, чтобы выделять на каждый запрос отдельный поток или процесс (как это делают серверы с традиционной архитектурой), NGINX мультиплексирует обработку множества соединений и запросов в одном рабочем процессе. Для этого применяются сокеты в неблокирующем режиме и такие эффективные методы работы с событиями, как epoll и kqueue.

За счет малого и постоянного количества полновесных потоков обработки (обычно по одному на ядро) достигается экономия памяти, а также ресурсов процессора на переключении контекстов. Все преимущества данного подхода вы можете хорошо наблюдать на примере самого NGINX, который способен обрабатывать миллионы запросов одновременно и хорошо масштабироваться.

Каждый процесс расходует память и каждое переключение между ними требует дополнительных циклов процессора, а также приводит к вымыванию L-кэшей

У медали есть и обратная сторона. Главной проблемой асинхронного подхода, а лучше даже сказать «врагом» — являются блокирующие операции. И, к сожалению, многие авторы сторонних модулей, не понимая принципов функционирования NGINX, пытаются выполнять блокирующие операции в своих модулях. Такие операции способны полностью убить производительность NGINX и их следует избегать любой ценой.

Но даже в текущей реализации NGINX не всегда возможно избежать блокировок. И для решения данной проблемы в NGINX версии 1.7.11 был представлен новый механизм «пулов потоков». Что это такое и как его применять разберем далее, а для начала познакомимся с нашим врагом в лицо.
Читать дальше →
Total votes 72: ↑71 and ↓1 +70
Comments 58

NGINX изнутри: рожден для производительности и масштабирования

Reading time 8 min
Views 145K
NGINX вполне заслуженно является одним из лучших по производительности серверов, и всё это благодаря его внутреннему устройству. В то время, как многие веб-серверы и серверы приложений используют простую многопоточную модель, NGINX выделяется из общей массы своей нетривиальной событийной архитектурой, которая позволяет ему с легкостью масштабироваться до сотен тысяч параллельных соединений.

Инфографика Inside NGINX сверху вниз проведет вас по азам устройства процессов к иллюстрации того, как NGINX обрабатывает множество соединений в одном процессе. Данная статья рассмотрит всё это чуть более детально.
Поехали!
Total votes 93: ↑93 and ↓0 +93
Comments 32

Увеличиваем производительность с помощью SO_REUSEPORT в NGINX 1.9.1

Reading time 3 min
Views 40K
В NGINX версии 1.9.1 появилась новая возможность, позволяющая использовать сокетную опцию SO_REUSEPORT, которая доступна в современных версиях операционных систем, таких как DragonFly BSD и Linux (ядра 3.9 и новее). Данная опция разрешает открывать сразу несколько слушающих сокетов на одном и том же адресе и порту. При этом, ядро будет распределять входящие соединения между ними.
Читать дальше →
Total votes 35: ↑35 and ↓0 +35
Comments 31

Релиз NGINX 1.8 и 1.9

Reading time 2 min
Views 24K
С радостью объявляем о выходе новых релизов NGINX 1.8 стабильной (stable) ветки и NGINX 1.9 основной (mainline) ветки, в рамках которой будет продолжаться разработка новой функциональности. Новые ветки релизов заменяют 1.6 и 1.7 соответственно.

За последний год в 1.7 было выпущено 12 версий, и все новые возможности, которые в них появились, теперь доступны в 1.8, включая:

  • Проверку SSL сертификатов бэкендов — Призвана защитить соединения с upstream-серверами от MITM-атак;
  • Логирование в syslog — Позволяет передавать логи по сети посредством UDP-сообщений;
  • Пулы потоков для выполнения блокирующих операций ввода-вывода — Увеличивают производительность NGINX в ситуациях, когда блокировка на чтении с диска неизбежна;
  • Новый метод балансировки нагрузки “hash” — Позволяет выбирать сервер из группы базируясь на хэше от произвольной переменной;
  • Небуферизированный прием тела запроса — Позволяет передавать запрос на бэкенд сразу, не дожидаясь окончания приема тела запроса целиком.

Полный список нововведений за последний год можно посмотреть в логе изменений для 1.8.
Читать дальше →
Total votes 47: ↑45 and ↓2 +43
Comments 12

Релиз NGINX 1.6 и 1.7. Особенности версионирования

Reading time 3 min
Views 17K
Вчера, 24 апреля, был анонсирован релиз NGINX 1.6 и 1.7. Эта статья объясняет, как планируются релизы NGINX и значение этого изменения нумерации версий.

NGINX 1.6 отделился от текущей основной (mainline) ветки 1.5, а последняя была перенумерована в 1.7. Это ежегодное событие, когда берется текущая основная ветка с новой функциональностью и от нее ответвляется новая стабильная (stable) ветка. Разработка активно продолжается на уже перенумерованной основной ветке.

image

Версия 1.4 более не поддерживается. Основная ветвь 1.5 была форкнута для создания стабильной 1.6 и перенумерована в 1.7.
Подробности
Total votes 48: ↑46 and ↓2 +44
Comments 40

Nginx получит полноценную поддержку HTTP/1.1 Keep-Alive соединений с бэк-эндами

Reading time 2 min
Views 5.9K
На прошлой неделе Максим Дунин разместил в англоязычном списке рассылки разработчиков Nginx сообщение с просьбой потестировать патч, добавляющий полноценную (включая chunked-ответы) поддержку Keep-Alive соединений (при использовании upstream keepalive модуля) с http, fastcgi и memcached бэк-энд серверами.

Во избежание кривотолков, напомню, что Nginx обладает прекрасной поддержкой протокола HTTP 1.1 и Keep-Alive соединений с клиентами. Однако, постоянные соединения с http бэк-эндами не поддерживаются. На то были свои причины.
Читать дальше →
Total votes 61: ↑60 and ↓1 +59
Comments 22

Релиз Nginx CT++ Module 0.5 — высокопроизводительного модуля-шаблонизатора для веб-сервера

Reading time 2 min
Views 3.3K
Первоначально хотел оформить как топик-ссылку, но тогда не получилось бы вставить картинку:

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

Позднее, как появится свободное время, напишу более подробную пошаговый HowTo, что вообще можно и что нужно делать с модулем, как можно представить MVC в виде: M — ваши сервисы, V — этот модуль и C — Nginx.
Читать дальше →
Total votes 65: ↑61 and ↓4 +57
Comments 72

Основы Linux от основателя Gentoo. Часть 4 (1/4): Файловые системы, разделы и блочные устройства

Reading time 20 min
Views 90K
Первый отрывок четвертой части серии руководств для новичков повествует о блочных устройствах, разделах и файловых системах. Вы научитесь размечать жесткий диск с помощью утилиты fdisk, создавать файловые системы и монтировать их. Познакомитесь с синтаксисом конфигурационного файла fstab.



Навигация по основам Linux от основателя Gentoo:

Часть I: 1, 2, 3, 4

Часть II: 1, 2, 3, 4, 5

Часть III: 1, 2, 3, 4

Часть IV
  1. Файловые системы, разделы и блочные устройства (вступление)
  2. Загрузка системы и уровни загрузки
  3. Квоты файловых систем
  4. Системные логи (итоги и ссылки)


Читать дальше →
Total votes 99: ↑92 and ↓7 +85
Comments 20

Основы Linux от основателя Gentoo. Часть 3 (1/4): Документация

Reading time 8 min
Views 34K
Первый отрывок третьей части серии руководств для новичков. Практически всё, что нужно знать, чтобы найти справочную информацию по вашей системе. Короче, RTFM и не задавайте глупых вопросов.



Навигация по основам Linux от основателя Gentoo:

Часть I: 1, 2, 3, 4

Часть II: 1, 2, 3, 4, 5

Часть III
  1. Документация (вступление)
  2. Модель прав доступа
  3. Управление аккаунтами
  4. Настройка окружения (итоги и ссылки)


Читать дальше →
Total votes 71: ↑61 and ↓10 +51
Comments 11

Основы Linux от основателя Gentoo. Часть 2 (5/5): Модули ядра

Reading time 8 min
Views 54K
В заключительном отрывке второй части описаны основы управление модулями ядра Linux. Этот минимум неплохо знать всякому пользователю, однако, не стоит надеяться обнаружить в этом руководстве для начинающих информацию по сборке и конфигурированию модулей ядра.



Навигация по основам Linux от основателя Gentoo:

Часть I
  1. BASH: основы навигации (вступление)
  2. Управление файлами и директориями
  3. Ссылки, а также удаление файлов и директорий
  4. Glob-подстановки (итоги и ссылки)
Часть II
  1. Регулярные выражения (вступление)
  2. Назначения папок, поиск файлов
  3. Управление процессами
  4. Обработка текста и перенаправления
  5. Модули ядра (итоги и ссылки)
Часть III: 1, 2, 3, 4


Читать дальше →
Total votes 99: ↑92 and ↓7 +85
Comments 23

Основы Linux от основателя Gentoo. Часть 2 (4/5): Обработка текста и перенаправления

Reading time 6 min
Views 35K
В этом отрывке вы узнаете про множество интересных и полезных команд по работе с текстовыми данными в Linux. Также даны основы работы с потоками ввода-вывода в bash.



Навигация по основам Linux от основателя Gentoo:

Часть I
  1. BASH: основы навигации (вступление)
  2. Управление файлами и директориями
  3. Ссылки, а также удаление файлов и директорий
  4. Glob-подстановки (итоги и ссылки)

Часть II
  1. Регулярные выражения (вступление)
  2. Назначения папок, поиск файлов
  3. Управление процессами
  4. Обработка текста и перенаправления
  5. Модули ядра (итоги и ссылки)


Читать дальше →
Total votes 60: ↑55 and ↓5 +50
Comments 32

Основы Linux от основателя Gentoo. Часть 2 (3/5): Управление процессами

Reading time 7 min
Views 57K
В этом отрывке рассмотрены команды управления процессами. Вы научитесь замораживать процессы, размораживать, отправлять в фоновый режим, изменять приоритет, просматривать запущенные процессы и жестоко их убивать. Введено понятие сигналов. Рассмотрены такие команды, как bg, fg, jobs, kill, nohup, nice, renice, ps и top.



Навигация по основам Linux от основателя Gentoo:

Часть I
  1. BASH: основы навигации (вступление)
  2. Управление файлами и директориями
  3. Ссылки, а также удаление файлов и директорий
  4. Glob-подстановки (итоги и ссылки)

Часть II
  1. Регулярные выражения (вступление)
  2. Назначения папок, поиск файлов
  3. Управление процессами
  4. Обработка текста и перенаправления
  5. Модули ядра (итоги и ссылки)


Читать дальше →
Total votes 63: ↑61 and ↓2 +59
Comments 20

Основы Linux от основателя Gentoo. Часть 2 (2/5): Назначения папок, поиск файлов

Reading time 9 min
Views 72K
В данном отрывке рассказано о стандарте иерархии файловой системы (FHS), почему директории так называются и для чего они нужны. Упомянута переменная окружения PATH и разобраны основные команды для поиска файлов в системе, такие как whereis, find и locate (slocate).



Навигация по основам Linux от основателя Gentoo:

Часть I
  1. BASH: основы навигации (вступление)
  2. Управление файлами и директориями
  3. Ссылки, а также удаление файлов и директорий
  4. Glob-подстановки (итоги и ссылки)

Часть II
  1. Регулярные выражения (вступление)
  2. Назначения папок, поиск файлов
  3. Управление процессами
  4. Обработка текста и перенаправления
  5. Модули ядра (итоги и ссылки)


Читать дальше →
Total votes 61: ↑53 and ↓8 +45
Comments 39

Основы Linux от основателя Gentoo. Часть 2 (1/5): Регулярные выражения

Reading time 7 min
Views 67K

Предисловие


Об этом самоучителе


Добро пожаловать в «Азы администрирования», второе из четырех обучающих руководств, разработанных чтобы подготовить вас к экзамену 101 в Linux Professional Institute. В данной части мы рассмотрим как использовать регулярные выражения для поиска текста в файлах по шаблонам. Затем, вы познакомитесь со «Стандартом иерархии файловой системы» (Filesystem Hierarchy Standard или сокр. FHS), также мы покажем вам как находить нужные файлы в вашей системе. После чего, вы узнаете как получить полный контроль над процессами в Linux, запуская их в фоновом режиме, просматривая список процессов, отсоединяя их от терминала, и многое другое. Далее последует быстрое введение в конвейеры, перенаправления и команды обработки текста. И наконец, мы познакомим вас с модулями ядра Linux.



В частности эта часть самоучителя (Часть 2) идеальна для тех, кто уже имеет неплохие базовые знания bash и хочет получить качественное введение в основные задачи администрирования Linux. Если в Linux вы новичок, мы рекомендуем вам сперва закончить первую часть данной серии практических руководств. Для некоторых, большая часть данного материала будет новой, более опытные же пользователи Linux могут счесть его отличным средством подвести итог своим базовым навыкам администрирования.


Читать дальше →
Total votes 47: ↑38 and ↓9 +29
Comments 35

Основы Linux от основателя Gentoo. Часть 1 (4/4): Glob-подстановки

Reading time 6 min
Views 59K
Заключительная часть перевода первой части замечательной серии учебных пособий. Предыдущие отрывки по ссылкам: начало, второй и третий.

В данном, четвертом, отрывке рассматривается использование джокеров (wild cards) *, [] и ? для подставления путей по шаблону. А также, подводятся итоги первой части. Enjoy! ;)
Читать дальше →
Total votes 49: ↑45 and ↓4 +41
Comments 54

Основы Linux от основателя Gentoo. Часть 1 (3/4): Ссылки, а также удаление файлов и директорий

Reading time 6 min
Views 93K
Третий отрывок из перевода первой части руководства. Предыдущие: первый, второй.

В этом отрывке рассмотрены жесткие и символические ссылки, а также разобрано удаление файлов и директорий с помощью команд rm и rmdir.
Читать дальше →
Total votes 56: ↑48 and ↓8 +40
Comments 29

Основы Linux от основателя Gentoo. Часть 1 (2/4): Управление файлами и директориями

Reading time 7 min
Views 114K
Продолжение перевода первой части руководства. Начало тут.

В данном отрывке рассмотрены команды работы с файловой системой и файлами, такие как ls, mkdir, touch, mv, cp, затронуто использование echo и cat. Рассказано про иноды файловой системы.
Читать дальше →
Total votes 92: ↑78 and ↓14 +64
Comments 44
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity