Как стать автором
Обновить
34.85
Рейтинг

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

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

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Прикладная некромантия. Перенос почтового сервера, не обновлявшегося пятнадцать лет, на iRedMail

Блог компании FirstVDS Системное администрирование *Серверная оптимизация *


Я люблю линукс, юникс и системное администрирование по странной причине. Это не оплата труда и не возможность управления сложными комплексами через консоль, а интересные, неформатные задачи, которые порой попадаются на пути самураев опенсорса. Об одной такой задаче я и расскажу.
Читать дальше →
Всего голосов 28: ↑25 и ↓3 +22
Просмотры 4.4K
Комментарии 13

Новости

YARL: как Яндекс построил распределённый Rate Limiter с нулевым влиянием на время ответа сервисов

Блог компании Яндекс Высокая производительность *Проектирование и рефакторинг *Серверная оптимизация *Серверное администрирование *

Yandex Rate Limiter (далее просто YARL) — это сервис лимитирования нагрузки для распределённых сервисов. Его особенность в том, что он способен работать с миллионами квот, имея при этом очень низкие накладные расходы на проверку квоты. Если совсем кратко, это система распределённых Leaky Bucket'ов, с помощью которых можно ограничивать разные величины, связанные со временем: скорость передачи данных по сети, запросы в секунду и т. п.



Меня зовут Денис Кореневский, я работаю в службе разработки внутреннего хранилища Яндекса, и сегодня я расскажу, как YARL устроен внутри, почему мы вообще написали своё решение и с какими трудностями нам пришлось столкнуться в процессе создания. Добро пожаловать под кат.

Читать дальше →
Всего голосов 80: ↑79 и ↓1 +78
Просмотры 11K
Комментарии 26

Вектор? Растр? А может — и то, и другое?

Блог компании RUVDS.com Работа с векторной графикой *Серверная оптимизация *Обработка изображений *Графический дизайн *
Перевод
На этой неделе я столкнулся с интересным классом задач, для решения которых, как я теперь понимаю, можно было использовать гораздо более удачный подход и раньше. Но существует ли такой подход?


Изображение для верхней части сайта

Речь идёт о подготовке изображения, рассчитанного на использовании в верхней правой части сайта jamstackconf.com. Мы, в маркетинговой команде Netlify, используем Figma. Первая моя попытка экспорта этого изображения для использования его на сайте оказалась далеко не самой удачной.
Читать дальше →
Всего голосов 38: ↑36 и ↓2 +34
Просмотры 4.6K
Комментарии 17

Photon Plugin: защищаем игровой процесс от читеров

Блог компании Lightmap Разработка игр *Серверная оптимизация *Unity *Дизайн игр *

По мере роста популярности нашего онлайн-шутера читеры все активнее его атаковали. Мы решили строить комплексную оборону по всем фронтам, где одним из шагов стала защита игрового процесса. Тогда взлому подвергались параметры здоровья, урона и скорострельности, кулдауны, количество патронов и многое другое — то, от чего в первую очередь страдали честные игроки.

Мы используем Photon Cloud для сетевого взаимодействия игроков, поэтому сразу стали искать удобное решение на его основе. И нашли Photon Plugin, который закрыл все потребности. Изначально его вводили только для защиты, но потом стали использовать и при разработке новых фичей, где требуется серверная логика. Как мы его внедряли — рассказал под катом.

Читать далее
Всего голосов 39: ↑39 и ↓0 +39
Просмотры 2.9K
Комментарии 6

Ускорение сайта путём выявления проблемных участков кода: xDebug + phpStorm

WordPress *PHP *Серверная оптимизация *Отладка *Тестирование веб-сервисов *
Из песочницы

Поделюсь с вами кейсом ускорения работы одного сайта на WP + WooCommerce. Статья будет полезна джунам и миддлам кто разрабатывает сайты, кто занимается оптимизацией сайтов и кто хочет посмотреть на работу php кода "с высоты". Для себя из полезного можно узнать как связать вместе OpenServer, PhpStorm и xDebug

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 5.8K
Комментарии 15

Как можно оптимизировать dot-product и не только. Доклад Яндекса

Блог компании Яндекс Высокая производительность *Совершенный код *C++ *Серверная оптимизация *
Разработчик инфраструктуры качества поиска Яндекса Ильнур Хузиев ilnurKh взял простую задачу — скалярное произведение двух векторов — и попробовал выжать все соки производительности кода. Из доклада вы узнаете, как использовать возможности процессора, настройки компилятора (и даже попробовать превзойти его), какой была бы правильная постановка задачи, как выбирать приоритеты и архитектуру. Да, вопрос выбора абстракций может встать даже на примере настолько простой задачи.

— Сегодня мы рассмотрим достаточно простую функцию — скалярное произведение двух векторов, и попробуем провести различные оптимизации. Надеюсь, что приёмы, которые мы рассмотрим, будут применены не только в этой задаче, но и в других.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 2.2K
Комментарии 2

Как мы использовали расширенную статистику Postgres и ускорились в 2850 раз

Блог компании SkillFactory Разработка веб-сайтов *PostgreSQL *Программирование *Серверная оптимизация *
Перевод

В этом переводе к старту курса по Fullstack-разработке на Python напоминаем о том, насколько важно знать технологии в деталях, грамотно применять их и планировать работу в целом. Цифра 2850 в заголовке — не преувеличение: ранее занимавший две минуты запрос в базе данных компании Affinity сегодня выполняется за 42 миллисекунды. Подробности, как всегда, под катом. А если вам нужен план развития навыков с большим количеством практики, вы можете обратить внимание на наши курсы.

Читать далее
Всего голосов 25: ↑22 и ↓3 +19
Просмотры 11K
Комментарии 5

Неожиданные причины торможения программ и систем

Программирование *Клиентская оптимизация *Серверная оптимизация *
Перевод

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

Я назвал пост Surprisingly Slow потому, что замедление было для меня неожиданным, или неоптимальные практики, ведущие к замедлению, настолько распространены, что многие программисты будут удивлены их существованию.

Разделы поста чаще всего никак не связаны друг с другом, поэтому можете выбирать самые интересные для вас.
Читать дальше →
Всего голосов 112: ↑111 и ↓1 +110
Просмотры 40K
Комментарии 86

SSE, нотификации, Node.js и при чём тут C#?

Анализ и проектирование систем *Серверная оптимизация *Node.JS *C# *Распределённые системы *
Из песочницы

Вписавшись в очередной провальный заранее стартап, мне прилетела задача: нужны уведомления на сайте. Ладно - сказал я себе. Открываю любимую IDE и начинаю писать очередной микросервис.

До этого я никогда не занимался уведомлениями, но был осведомлен, что есть для этого несколько путей: WebSocket, SSE и Long Polling.

Читать далее
Всего голосов 12: ↑10 и ↓2 +8
Просмотры 6.3K
Комментарии 13

Нагрузочное тестирование игровых серверов

Блог компании VK Серверная оптимизация *Тестирование игр *Kotlin *

image


Меня зовут Дмитрий, я специалист по тестированию в студии IT Territory. За 17 лет мы выпустили более 15 успешных игровых проектов с общей аудиторией около 100 млн игроков по всему миру. Вы можете быть знакомы с нами по таким проектам, как Аллоды Онлайн, Hawk, Space Justice, World Above, Rush Royale. И в этом посте я расскажу о том, как мы проводим нагрузочное тестирование игровых серверов.

Читать дальше →
Всего голосов 26: ↑24 и ↓2 +22
Просмотры 3K
Комментарии 1

DCIM-платформа Racks: почему мы отказались от энтерпрайз-решения в пользу самописного приложения

Блог компании Selectel Хостинг IT-инфраструктура *Серверная оптимизация *Сетевые технологии *

Как вести учет и контроль оборудования, если у тебя более десятка серверных в трех географически разделенных дата-центрах? Как и многие крупные провайдеры, в России и за рубежом, Selectel начал реализовывать DCIM-систему. Однако история с готовым энтерпрайз-решением нам не подошла: попытка адаптировать внешнюю систему под свои потребности с помощью пары скриптов на Python выросла в полноценную самописную DCIM-платформу.

Собственно, о том, как «вылупилась» и развивается DCIM-система, которую мы назвали Racks, мы сегодня и расскажем. Что сейчас может приложение и почему мы в итоге отказались от стороннего решения? Ченджлог подняли руководитель направления DCIM Вячеслав Литвинов и разработчик систем управления инфраструктурой дата-центров Николай Огоров.
Всего голосов 45: ↑45 и ↓0 +45
Просмотры 3.8K
Комментарии 12

Батлрояль за 2 месяца: как мы обновили сетевой код и на 20% сократили траты на сервера

Блог компании Lightmap Разработка игр *Серверная оптимизация *Unity *Дизайн игр *

Оптимизация сетевого кода онлайн-шутера — это не только экономия на серверах и трафике, но еще и создание комфорта для игроков. Она особенно важна, когда на одной карте встречается огромное количество пользователей как, например, в батлрояле на 100 человек.

В этой статье расскажу о том, как мы обновили сетевой код для собственной королевской битвы на Unity, ввели систему сетевых чанков, контролируемый рандом и в результате сократили траты на сервера на 20%.

Читать далее
Всего голосов 44: ↑44 и ↓0 +44
Просмотры 8.2K
Комментарии 10

PvP-шутер без даунтаймов: архитектура, аварийные режимы и сервера с рубильником

Блог компании Lightmap Разработка игр *Серверная оптимизация *Серверное администрирование *Хранение данных *

Мы уже рассказывали, почему первая версия архитектуры игры не была идеальной. Pixel Gun 3D изначально был прототипом в новом для команды жанре PvP-шутер. Хотели протестировать идею, чтобы собрать фидбек от игроков, но популярность игры начала расти достаточно быстро — писать ее заново было уже поздно. Сейчас подход к разработке новых проектов у нас сильно изменился, но зато тогда, без опыта, мы не потратили уйму времени на создание прототипа, который мог оказаться неинтересным для игроков.

С ростом функционала приходилось «на лету» менять архитектуру, делать ее масштабируемой, а также реализовать нашу идею — сделать шутер без даунтаймов даже во время технических работ или форс-мажора.

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

Читать далее
Всего голосов 34: ↑34 и ↓0 +34
Просмотры 5.6K
Комментарии 4

Выше 90 баллов PageSpeed на WordPress — это реально

WordPress *Разработка веб-сайтов *Серверная оптимизация *

С июля 2018 Google начали учитывать скорость страниц в выдаче. В ноябре 2019 года они добавили отчет о скорости страниц в личный кабинет Web Search Console. В июне 2021 они ужесточили критерии PageSpeed, подняв влияние Total Blocking Time (TBT) с 25% до 30% и Cumulative Layout Shift (CLS) с 5% до 15%.

Читать далее
Всего голосов 5: ↑2 и ↓3 -1
Просмотры 3.7K
Комментарии 45

Антистресс для твоего сервера. Тестируем балансировщик нагрузки от Timeweb

Блог компании Timeweb Системное администрирование *Программирование *Серверная оптимизация *Серверное администрирование *

Привет, Хабр!


Сегодня мы расскажем сообществу о запуске нашего нового сервиса — балансировщик нагрузки.

Сейчас услуга доступна для всех желающих в режиме открытого бета-тестирования в личном кабинете VDS. Это, конечно, бесплатно, а мы будем благодарны вам за комментарии и замечания.

Ребята, почему только сейчас?


Можете вполне резонно спросить вы. Мы, как и все, привыкаем к новой, постпандемийной (или еще нет?), реальности и отвечаем запросам наших клиентов.

Компании погружаются в тотальный онлайн, а значит, нагрузка на сервисы растет. Балансировщик распределяет входящие запросы на несколько серверов для повышения отказоустойчивости, а также он легко позволяет организовать масштабируемость любого приложения.
Читать дальше →
Всего голосов 4: ↑2 и ↓2 0
Просмотры 1.4K
Комментарии 1

Как ускорить сайт в 4 раза, просто перенастроив сервер

Nginx *Серверная оптимизация *Серверное администрирование *Администрирование баз данных *Хранение данных *
Recovery mode

Если вы работаете с сайтом, который постепенно растет, - увеличивается количество товаров, трафик с рекламы - то рано или поздно придется перейти в режим работы highload, высоких нагрузок на сервер. Но что делать, если ваш сайт не растет, а сервер все чаще не выдерживает, и происходит блокировка данных? Именно с этой проблемой мы столкнулись, дорабатывая сайт для интернет-магазина светового оборудования с ассортиментом более чем 100 000 товаров.

Читать далее
Всего голосов 16: ↑6 и ↓10 -4
Просмотры 4.8K
Комментарии 26

Необычные подходы к охлаждению дата-центров

Блог компании Timeweb Серверная оптимизация *Хранение данных *Научно-популярное Криптовалюты

Охлаждение оборудования — задача, как известно, важная и нужная. Прогресс не стоит на месте и ищет лазейки для новых эффективных решений, если не сказать открытий!

Решили порадовать вас подборкой неординарных подходов для охлаждения дата-центров:

майнинговая ферма в Сибири,

подводный дата-центр компании Microsoft возле Шотландии,

и даже охлаждение серверов в масляной ванне!

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 5.9K
Комментарии 12

Многопоточный HTTP-сервер с ThreadPool’ом и конечным автоматом

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

Сегодня я расскажу вам про довольно простую, но интересную реализацию многопоточности в HTTP-сервере без создания потока для каждого клиента. На мое удивление информацию про такую реализацию я нашёл с трудом, поэтому решил поделиться с вами.

Читать далее
Всего голосов 8: ↑0 и ↓8 -8
Просмотры 4.6K
Комментарии 7

Quantization Aware Training. Или как правильно использовать fp16 inference в TensorRT

Высокая производительность *Программирование *Серверная оптимизация *Машинное обучение *Искусственный интеллект

Low-precision inference в TensorRT сегодня - мастхэв, бест практис и прочие иностранные. Сконвертить из TensorFlow легко, запустить легко, использовать fp16 легко. Да и КПД выше, чем у pruning или distillation. На первый взгляд всё работает идеально. Но на самом деле всё ли так гладко? Рассказываем, как мы в TrafficData споткнулись об fp16, встали и написали статью.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 1.7K
Комментарии 7

Ускоряем загрузку веб-страниц: тестируем 4 стратегии оптимизации изображений

Блог компании Маклауд Разработка веб-сайтов *Серверная оптимизация *HTML *
Перевод


Статистика не устаёт повторять нам про устойчивую корреляцию между падением скорости загрузки страниц сайта и ростом частоты отказов со снижением конверсии. Я не открою Америку, если скажу, что работу сайта замедляет «раздутая» полезная нагрузка (с плохо оптимизированными изображениями и избыточным HTML-кодом). Это заставляет сервер выполнять лишнюю работу. Огромный пласт такой работы связан с проблемами оптимизации изображений. 

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

Не очень эффективными я считаю стратегии, которые опираются на тезис о том, что изображения — это статический контент (в течение статьи я ещё разовью эту мысль и приведу аргументы). Сейчас на мобильные устройства приходится большая доля интернет-трафика, но есть проблема: эти устройства имеют различные размеры, разрешения экрана, операционные системы и прикладное ПО (например, браузеры). Каким образом сделать так, чтобы веб-страница быстро (!)и корректно загружалась на любой платформе и выглядела при этом одинаково?
Читать дальше →
Всего голосов 29: ↑28 и ↓1 +27
Просмотры 6.4K
Комментарии 1

Вклад авторов