Обновить
32K+

Серверная оптимизация *

Разгружаем сервер

44,05
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Тот самый bitrix кластер. Война бесконечности

Время на прочтение18 мин
Охват и читатели7.2K

Во второй части статьи про bitrix кластер мы будет рассматривать настройку percona xtradb cluster mysql 5.7, настройка арбитра, настройка удобного dashboard.
Если вы пропустили предыдущие части: Первая часть.

Читать далее

MariaDB: настройка и мониторинг с помощью Zabbix

Время на прочтение11 мин
Охват и читатели24K

От правильной настройки и надежной работы сервера СУБД зависит работоспособность и быстродействие интернет-магазинов, работающих на сервисе SAAS. То же самое относится к любым сайтам, если им нужна база данных. 

Из нашей статьи вы узнаете, как установить сервер MariaDB в ОС Debian 11, как оптимизировать его параметры сразу после установки и как контролировать работу MariaDB вручную и с помощью Zabbix.

Читать далее

Установка Redis и мониторинг с помощью Zabbix

Время на прочтение7 мин
Охват и читатели10K

Если вам нужна быстродействующая нереляционная СУБД типа «ключ-значение», то, возможно, подойдет Redis (Remote Dictionary Server). На базе Redis можно создать не только хранилище данных, но и кэш, брокер сообщений, а также очередь. Для увеличения отказоустойчивости можно настроить репликацию данных между серверами Redis.

В этой статье мы расскажем о том, как установить Redis в ОС Debian 11, а также как контролировать этот сервис вручную и с помощью Zabbix. 

Читать далее

Task-Сервер на «Flask»: как заставить несколько компьютеров решать одну задачу

Время на прочтение5 мин
Охват и читатели5.9K

Привет, Хабр! Подготовительным этапом для видеоаналитики с применением методов машинного обучения - является выгрузка записей из видеорегистраторов Hikvision, что является достаточно длительной задачей, особенно если регистраторов несколько, давайте попытаемся разобраться как выполнить эту работу быстрее и удобнее, используя сервер.

Читать далее

Охлаждаем горячие головы

Время на прочтение5 мин
Охват и читатели6.5K

Качественное охлаждение – залог быстрой и бесперебойной работы любого компьютера. Обеспечить оптимальную температуру в системном блоке можно разными способами, поэтому выбор системы охлаждения часто становится предметом горячих споров. Спорщики делятся на два лагеря: вода и воздух. Попробуем разобраться в преимуществах и недостатках воздушного и жидкостного охлаждения.

Читать далее

Как Go выполняет встраивание

Время на прочтение10 мин
Охват и читатели23K

Привет, я Никита Галушко, работаю над мессенджером ВКонтакте. Расскажу, как Go подходит к инлайнингу функций — этот процесс ещё называют встраиванием. В статье разберёмся, зачем вообще это нужно, какой профит можно получить для ускорения работы кода, а когда плюсы могут обернуться минусами. На примерах углубимся в специфику Go: как этот язык инлайнит функции, что можно и что нельзя встроить, какие возможности доступны в разных версиях. Также обсудим ограничения и способы обойти их.

Читать далее

Memcached: установка сервиса, мониторинг вручную и с помощью Zabbix

Время на прочтение8 мин
Охват и читатели17K

Большинство высоконагруженных сервисов, к которым, без сомнения, относится сервис SAAS интернет-магазинов, используют Memcached как высокопроизводительное хранилище данных в оперативной памяти сервера. В этой статье мы расскажем о том, как установить Memcached, как контролировать работу сервиса Memcached вручную, а также с помощью Zabbix.

Читать далее

Использование slots | Python

Время на прочтение4 мин
Охват и читатели51K

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

К счастью, есть выход — слоты, они обеспечивают специальный механизм уменьшения размера объектов. Это концепция оптимизации памяти на объектах. Также, использование слотов позволяет нам ускорить доступ к атрибутам.

Читать далее

Мониторинг дисковых квот с помощью Zabbix

Время на прочтение9 мин
Охват и читатели9.3K

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

В этой статье мы расскажем про настройку квот файловой системы Linux, а также про то, как организован мониторинг квот на хостинговых серверах SAAS-сервиса интернет-магазинов.

Читать далее

Как настроить Nginx в качестве балансировщика нагрузки

Время на прочтение9 мин
Охват и читатели137K

Что такое балансировка нагрузки?


Балансировка нагрузки подразумевает эффективное распределение входящего сетевого трафика между группой бэкенд-серверов. Задача же регулятора — распределить нагрузку между несколькими установленными бэкенд-серверами.

Существует несколько типов балансировщиков нагрузки:

  • Балансировщик нагрузки приложений.
  • Сетевой балансировщик нагрузки.
  • Балансировщик нагрузки шлюза.
  • Классический балансировщик нагрузки.
Читать дальше →

Как планировать выполнение команд с помощью Anacron в Linux

Время на прочтение6 мин
Охват и читатели16K

Когда нам требуется запланировать выполнение задачи в Linux, мы всегда можем использовать такие утилиты, как cron или systemd-timers. Есть различные реализации cron, но всех их объединяет то, что они запускаются как системные службы и рассчитаны на использование в постоянно работающих системах, например, на серверах. Когда нам нужно запланировать выполнение задачи на домашнем компьютере или ноутбуке, которые чаще всего находятся в выключенном состоянии, то можно просто использовать anacron.

Собственно, именно в этой статье, мы и узнаем, что такое anacron, чем отличается от cron, и как использовать anacron для планирования команд в Linux.
Читать дальше →

Как мы использовали RabbitMQ для разбиения монолита крупнейшего ритейлера страны*

Время на прочтение6 мин
Охват и читатели11K

Накопить за 7 лет терабайты данных в монолите и решить, что пора оптимизировать систему и разбивать её на микросервисы — страшный сон для айтишника. Добавим сюда ещё база на решениях от 1С и необходимость обеспечить непрерывность процесса. Стало страшно? А для нас — возможность показать экспертность и решить нетривиальную задачу. О том, как «кролик» помог сдвинуть гору рассказал архитектор 1С компании «Автомакон» Виталий Осиповский.

С 2013 года ВкусВилл проводил внутреннюю автоматизацию с использованием программ на базе 1С. За годы активного развития и эксплуатации база увеличилась до нескольких терабайт, кратно выросло количество операций, что спровоцировало большой объем работы для администраторов, оптимизаторов и команды разработчиков. Например, тяжелые алгоритмы планирования, закрытий, генерации документов могли негативно влиять на работу всей базы.

Любые сбои и простои были неадекватно затратны и влияли на все компоненты системы в целом. А сама система не годилась для быстрого масштабирования бизнеса. Поэтому уже в 2020 году приняли решение о поэтапном разделении монолита на отдельные программные компоненты.  

Читать далее

Тот самый bitrix-кластер. Начало

Время на прочтение11 мин
Охват и читатели17K

Всем доброго времени суток. Мы решили описать построение отказоустойчивой инфраструктуры для bitrix в рамках серии статей, и сегодня публикуем первую часть. Вариант, который мы будем описывать, - не идеальный, но мы стремились к хотя бы максимально приближенному к идеальному видению данного кластера. В связи со спецификой работы bitrix-ядра, необходимо учитывать очень много факторов для построения инфраструктуры, и вы старались это учитывать. 

Серия статей будет представлять собой теоретическую часть и практическую части. В сегодняшней - теоретической - части мы разберем все нюансы кластеризации и особенностей bitrix-составляющей.

Читать далее

Ближайшие события

Мониторинг SSL-сертификатов и доменов с помощью Zabbix

Время на прочтение16 мин
Охват и читатели27K

Если вы отвечаете за работоспособность сайтов, то эта статья поможет вам и вашим клиентам своевременно продлить срок регистрации доменов и вовремя обновить SSL-сертификаты. 

Как и предыдущих статьях нашей серии про Zabbix, мы сначала рассмотрим ручные методы контроля, а затем перейдем к описанию шаблона и скриптов контроля для Zabbix.

Читать далее

Сага о SEO, часть 1: серверный рендеринг

Время на прочтение18 мин
Охват и читатели11K

Наверняка хотя бы раз в жизни вы или ваши знакомые в поисках приятного досуга на вечер обращались к Яндексу или Гуглу с запросами вроде “кино онлайн бесплатно” или “смотреть сериалы 2021”. Если так, не стоит стесняться, вы такой не один, с подобными запросами в Яндекс, например, обращаются несколько миллионов человек в месяц. При этом, скорее всего, как и большинство пользователей с таким запросом, вы не имеете преференций относительно того, где вам этот контент покажут, и перебираете ссылки в выдаче сверху вниз, пока не найдете устраивающий вас ресурс. А значит, владельцы этих ресурсов максимально заинтересованы в том, чтобы

Читать далее

Мониторинг контроллера MegaRAID и подключенных к нему дисков с помощью Zabbix

Время на прочтение15 мин
Охват и читатели68K

Когда нужно обеспечить быстродействие и надежность дисковой системы, а также возможность горячей замены дисков без выключения сервера, большую помощь окажут дисковые контроллеры с кэш памятью и защитным аккумулятором, такие как MegaRAID. Новые версии этих контроллеров есть на сайте https://www.broadcom.com/products/storage/raid-controllers.

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

Читать далее

Мониторинг дисков и программных RAID-массивов с помощью Zabbix

Время на прочтение14 мин
Охват и читатели47K

Ранее в статьях, посвященных Zabbix, мы рассказали про особенности мониторинга SAAS-сервиса интернет-магазинов, а также про установку сервера и агента Zabbix.

Новая статья поможет вам настроить мониторинг дисков и программных RAID-массивов, созданных с помощью mdadm. Без преувеличения можно сказать, что мониторинг этих устройств сервера представляет собой одну из важнейших задач. 

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

Читать далее

Устранение утечек памяти с помощью профилирования

Время на прочтение23 мин
Охват и читатели13K

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

В этой статье мы расскажем об использовании профайлеров кучи, а также объясним, как спроектированы и реализованы популярные профайлеры кучи, например, профайлер кучи Go, gperftools, jemalloc и Bytehound.
Читать дальше →

Пять советов по исправлению перекошенных соединений в Apache Spark

Время на прочтение9 мин
Охват и читатели6.9K

Соединения (Joins) являются одними из наиболее фундаментальных преобразований в типичной процедуре обработки данных. Оператор Join позволяет коррелировать, обогащать и фильтровать два входных набора (пакета / блока) данных (Datasets).
Обычно два входных набора данных классифицируются как левый и правый на основе их расположения по отношению к пункту/оператору Join.
По сути, соединение работает на основе условного оператора, который включает логическое выражение, основанное на сравнении между левым ключом, полученным из записи левого блока данных, и правым ключом, полученным из записи правого комплекса данных. Левый и правый ключи обычно называются соединительными ключами (Join Keys). Логическое выражение оценивается для каждой пары записей из двух входных наборов данных. На основе логического вывода, полученного в результате оценки выражения, условный оператор включает условие выбора — для отбора либо одной из записей (из пары), либо комбинированной записи (из записей, образующих пару).
Читать дальше →

Ищем боттлнеки за 30 минут с помощью Jaeger трейсов

Время на прочтение8 мин
Охват и читатели6K

Всем привет! Меня зовут Артем, я бэкенд-разработчик в команде клиентского бэкенда. Одна из важных частей моей работы — это снижение латенси нашего бэкенда. История, о которой я расскажу в статье, как раз и началась с одной из таких задач. Звучала она следующим образом:


В одном из эндпоинтов чекаута 99 перцентиль латенси пробивает SLO. Нужно это исправить.

Соответственно, возникает вопрос: как максимально быстро и точно найти причину тормозов очень низкочастотного запроса на 99 перцентиле и что делать, чтобы ее устранить? Ответом на него стала библиотека для полуавтоматического поиска узких мест в распределененных системах. Ссылка на гитхаб будет в конце статьи.

Читать дальше →