
Серверная оптимизация *
Разгружаем сервер
Производительность Joomla на больших объемах контента

Joomla очень плохо переваривает базу данных даже с несколькими тысячами статей в таблице _content. При нескольких десятках тысяч запросы в базу стандартных модулей типа mod_articles_popular могут зависать на секунды.
Всё дело в ACL (Access Control List) — политике контроля доступа. Проверка законности доступа пользователя к материалам занимает свыше 98% времени выполнения запроса.
Как Netflix эвакуируется из региона AWS за семь минут
Netflix уменьшил время аварийного переключения с 45 до 7 минут без каких-либо затрат

Изображение: Florida Memory. Доработано Opensource.com. CC BY-SA 4.0
Зимой 2012 года Netflix пережил длительный сбой, уйдя в отключку на семь часов из-за проблем с сервисом AWS Elastic Load Balancer в регионе US-East (Netflix работает на AWS — у нас нет собственных дата-центров. Всё ваше взаимодействие с Netflix происходит через AWS, кроме самого потокового видео. Как только вы нажмете Play, начинает загружаться видеопоток из нашей собственной сети CDN). Во время сбоя ни один пакет из региона US-East не доходил до наших серверов.
Чтобы такого больше не повторилось, мы решили создать систему аварийного переключения, устойчивую к сбоям базовых поставщиков услуг. Аварийное переключение (failover) — это система обеспечения отказоустойчивости, когда в случае сбоя основной системы автоматически активируется резервное оборудование.
Diarrhea для вашего бэкенда на Node.JS — уменьшаем вес сборки
Наверняка вы часто замечали, сколько всякого мусора лежит внутри node modules. Это тесты, бенчмарки, ридми файлы, лицензии, тайпскрипт, и ещё безумное количество мусора, который можно более-менее безопасно удалить. Что мы собственно и сделаем в этом посте.
Картинку про вес node module я и так упоминал последние несколько публикаций, так что вот вам другая, которая в целом отражает текущую ситуацию. В качестве саундтрека к посту рекомендуется Little Big, “Life in da trash”.

Splunk 7.1. Что нового? Новый веб интерфейс, интеграция с Apache Kafka и многое другое…

Несколько дней назад компания Splunk выпустила новый релиз своей платформы Splunk 7.1 в котором, наверно, произошло самое ожидаемое изменение за последние несколько лет — да, полностью изменился графический интерфейс. В этой статье мы расскажем об основных нововведениях и улучшениях платформы. Что еще нового помимо GUI? Смотрите под кат.
Как повысить производительность, используя бессерверную архитектуру

Фото: Jesse Darland с Unsplash
В этой статье речь пойдёт о том, как перенести процесс предварительной обработки изображений с сервера приложений на абсолютно бессерверную архитектуру платформы AWS.
Насколько быстр AMP на самом деле?
Оценить производительность AMP на самом деле не так просто, чем кажется. Нужно рассмотреть по крайней мере четыре контекста:
FFMPEG. Загружаем часть видео с YouTube

Иногда мы хотим поделиться с друзьями частью какого то видео на YouTube — время концентрации внимания в современной реальности снижено до предела, и если скидывать ссылку на ролик(даже с таймкодом начала) с комментарием «смотреть с 21:51 по 24:55» — велика вероятность, что видео просмотрено не будет.
Кроме того — куски видео могут потребоваться для монтажа своих роликов — и довольно неудобно скачивать ради нескольких секунд весь ролик и искать/вырезать нужную часть в программе для монтажа.
Как загружать часть видео YouTube при помощи ffmpeg — под катом
Вдвое мощней за те же деньги! Intel Xeon E5 против E3-серии
Не так давно мы публиковали статью Сравнение производительности процессоров Intel разных поколений, в которой представлены результаты тестирования 8-ядерных процессоров Intel Xeon E5. С тех пор, по акции, было продано несколько сотен серверов на базе процессоров V1/V2, которые стали достойным аналогом E5-2620V4/2630V3 в таких задачах как: сервер баз данных, терминальный сервер, видеонаблюдение и пр. Но, к сожалению, модельный ряд был ограничен только 2-процессорными платформами, что накладывало дополнительную финансовую нагрузку при использовании 1-процессорных конфигураций. Большое количество запросов побудило нас разработать бюджетную модель 1-процессорного сервера/рабочей станции, которая должна существенно выигрывать по производительности у платформ на базе Xeon E3/Core i7, и при этом конкурировать с ними по цене.У тебя есть быстрый сайт? А если проверю?

Мониторинг эффективности работы IT-систем с помощью Splunk IT Service Intelligence

Вы знаете, насколько эффективно работают элементы вашей IT- инфраструктуры? Как они влияют друг на друга? Может быть, какой-нибудь элемент ухудшает работу системы в целом? Как понять, что это за элемент?
Вопросы для собеседования бэкенд-разработчика
Этот список появился как личная памятка по темам, которые я обсуждал с коллегами и друзьями и в которых хотел разобраться поглубже…Я не большой любитель задавать технические вопросы на собеседованиях: по мне так лучше посидеть с кандидатом (или кандидаткой) за клавиатурой над каким-то реальным кодом, реальной проблемой — и целый день заниматься парным программированием, желательно поочерёдно с остальными членами команды. Но я считаю, что некоторые технические вопросы могут быть хорошей отправной точкой для начала увлекательного и приятного разговора и позволят глубже узнать друг друга.
В этом репозитории собран ряд вопросов, связанных с серверной частью, которые можно использовать при проверке потенциальных кандидатов. Ни в коем случае не рекомендуется задавать все вопросы одному кандидату: это займет несколько часов и вообще не имеет смысла, потому что они охватывают слишком широкий спектр тем. Никто не может знать всего. Выберите наиболее актуальный раздел и самые интересные вопросы, чтобы развернуть беседу.
СХД NetApp — преемственность поколений, проблемы и способы их решения
Кому интересна эта статья
К написанию настоящей статьи меня подтолкнул кейс, случившийся c одной уважаемой компанией, которая давно и успешно эксплуатирует решения NetApp для хранения данных. Управление данными средствами NetApp происходит в международном масштабе, в том числе и в России. Российское представительство имеет территориально распределённую офисную структуру и часть локальных ИТ-сервисов вынесена в регионы: локации разбросаны от штаб-квартиры в Москве до северных регионов, где бродят белые медведи, а интернет доступен только по узким спутниковым каналам связи.
Статья будет интересна тем, кто:
Ближайшие события
Red Hat поглощает компанию CoreOS
Компания Red Hat объявила о покупке компании CoreOS, хорошо знакомой многим хабравчанам, и занимающей достойное место на рынке систем контейнерной изоляции и сопутсвующего ПО. Озвученная сумма сделки — 250 млн. долларов.

Среди развивавшихся в CoreOS проектов, которые конкурировали с решениями Docker и Red Hat Atomic, можно отметить атомарно обновляемое Linux-окружение CoreOS Container Linux (появившейся на рынке в 2014 под названием CoreOS). Container Linux представил логику наличия в ОС только минимального набора компонентов, необходимых для запуска контейнеров.
Как улучшить производительность сайта в 8 раз: наш опыт интеграции сервисов AWS
Как создать свой первый безопасный веб-сервер, готовый к продуктиву
Для прогона тестов мы будем использовать Amazon EC2, но можно взять и Amazon LightSail, Digital Ocean, Vultr или другой сервис. Все они конфигурируются одинаково, так что выбирайте тот, который вам по душе.

Маршрутизация в socks. Еще один способ
Советую другой способ с использованием systemd-networkd.
Прежде чем перейти к описанию настройки системы, предоставлю ссылку на исходники badvpn (может кому-то понадобится).
Итак, после скачивания и сборки пакета, предлагаю сразу создать сервис systemd со следующим содержанием:
cat /etc/systemd/system/tun2socks.service
[Unit]
Description=Start tun2socks
[Service]
ExecStart=/путь/к/badvpn-tun2socks --tundev tun0 --netif-ipaddr 10.0.0.2 --netif-netmask 255.255.255.0 --socks-server-addr 127.0.0.1:1080
[Install]
WantedBy=multi-user.targetKey-value для хранения метаданных в СХД. Тестируем выделенные базы данных

В этой статье мы продолжаем рассказывать о том, как можно хранить метаданные в СХД при помощи баз данных key-value.
На этот раз в центре нашего внимания выделенные БД: Aerospike и RocksDB. Описание значимости метаданных в СХД, а также результаты тестирования встроенных БД можно посмотреть тут.
Servlet 4.0: Делаем больше быстрее. Server Push
До окончания этого года остаётся не так уж и много времени, но мы ещё похоже успеем запустить два курса, одним из которых будет курс по Java EE. Так что держите первую часть заметок по Servlet 4.0
Новый крупный релиз API Servlet охватывает протокол HTTP/2 и прогнозирует потребности в ресурсах.
Долгожданное обновление для Java EE 8 включает в себя обновления существующих API: JAX-RS 2.1, Bean Validation 2.0, JavaServer Faces (JSF) 2.3, Contexts and Dependency Injection (CDI) 2.0, JSON with Padding (JSONP) 1.1 и Servlet 4.0, а также два новых API: JSON-Binding (JSON-B) и Java EE Security. Среди этих API, Servlet 4.0 представляет собой достаточно крупное обновление, первое с 2009 года.
Импульс, который вызвал этот большой релиз (а не точечное обновление), — это глобальное развертывание протокола HTTP/2 и множество новых возможностей, которые он приносит. Это обновление для HTTP является первым за почти 20 лет и устраняет многие недостатки HTTP 1.x. Новые возможности многочисленны (мультиплексирование запросов/ответов, сжатие заголовков, приоритизация потоков и push-сервер), но наиболее заметной функцией для пользователей Servlet API является Server Push, о котором я расскажу в этой статье.
Server Push — это не единственное примечательное дополнение к Servlet 4.0. Этот релиз также представляет усовершенствования в виде Servlet Mapping API, который поддерживает распознавание URL-отображений во время выполнения, за счет улучшений получения ссылочных путей. В этой статье обсуждаются эти функции, и как Server Push был интегрирован в API JavaServer Faces 2.3.

Key-value для хранения метаданных в СХД. Тестируем встраиваемые базы данных

7-8 ноября 2017 на конференции Highload++ исследователи лаборатории «Рэйдикс» представили доклад «Метаданные для кластера: гонка key-value-героев».
В этой статье мы представили основной материал доклада, касающийся тестирования баз данных key-value. «Зачем их тестировать производителю СХД?», — спрóсите вы. Задача возникла в связи с проблемой хранения метаданных. Такие «фичи», как дедупликация, тиринг, тонкое выделение ресурсов (thin provisioning), лог-структурированная запись, идут вразрез с механизмом прямой адресации – возникает необходимость хранить большое количество служебной информации.