Обновить
52.56

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

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

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

Бесперебойное электроснабжение торговых центров или Shopping Must Go On

Время на прочтение7 мин
Количество просмотров4.1K


Вечером 9 декабря 2019 года предпраздничный шопинг посетителей торгового центра Eaton Centre в Торонто был прерван неожиданным блэкаутом. Торговые галереи погрузились в темноту, и единственным источником света осталась рождественская елка — ее фото многие поспешили запостить в соцсети как совершенно мистическое явление. Впрочем, среди твитов были и такие, где мистику объяснили легко и просто: елка была подключена к источнику бесперебойного питания. Сегодня мы поговорим о том, на каких ИБП арендаторы могут организовать бесперебойное электроснабжение для своих площадей в торговых центрах. Ведь shopping must go on, не правда ли?
Читать дальше →

Делегируем управление RDP-сеансами

Время на прочтение5 мин
Количество просмотров21K

В организации, где я работаю, удаленка запрещена в принципе. Была. До прошлой недели. Теперь пришлось в срочном порядке внедрять решение. От бизнеса — адаптация процессов к новому формату работы, от нас — PKI с пин-кодами и токенами, VPN, детальное логирование и много чего ещё.
Помимо всего прочего, я занимался настройкой инфраструктуры удаленных рабочих столов aka службы терминалов. У нас несколько RDS-развертываний в разных ЦОДах. Одной из задач было дать возможность коллегам из смежных подразделений ИТ подключаться к пользовательским сеансам в интерактивном режиме. Как известно, для этого есть штатный механизм RDS Shadow и самый простой способ его делегировать — дать права локального администратора на RDS-серверах.
Я уважаю и ценю своих коллег, но очень жадный до раздачи админских прав. :) Тех, кто со мной солидарен, прошу под кат.
Читать дальше →

Вывод результатов поиска и проблемы с производительностью

Время на прочтение12 мин
Количество просмотров3.9K
Один из типовых сценариев во всех привычных нам приложениях — поиск данных по определенным критериям и вывод их в удобном для чтения виде. Тут же могут быть дополнительные возможности по сортировке, группировке, постраничному выводу. Задача, по идее, тривиальная, но при ее решении многие разработчики делают ряд ошибок, из-за которых потом страдает производительность. Попробуем рассмотреть различные варианты решений этой задачи и сформулировать рекомендации по выбору наиболее эффективной реализации.

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

Для edge-серверов десятого поколения Cloudflare выбирает процессоры от AMD

Время на прочтение9 мин
Количество просмотров2.9K


Ежедневно через сеть Cloudflare Network проходит более миллиарда уникальных IP-адресов; она обслуживает более 11 млн HTTP-запросов в секунду; она находится на расстоянии не более 100 мс от 95% интернет-населения. Наша сеть раскинулась на 200 городов в более чем 90 странах, а наша команда инженеров построила чрезвычайно быструю и надёжную инфраструктуру.

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

Наш программный стек обрабатывает высоконагруженные вычисления и очень зависит от скорости CPU, из-за чего нашим инженерам приходится постоянно оптимизировать эффективность и надёжность Cloudflare на всех уровнях стека. На стороне сервера проще всего увеличить вычислительную мощность, добавив ядер CPU. Чем больше ядер можно уместить в сервере, тем больше он сможет обрабатывать данных. Для нас это важно, поскольку разнообразие наших продуктов и клиентов со временем растёт, и рост запросов требует от серверов увеличения производительности. Чтобы увеличить их производительность, нам требовалось увеличить плотность ядер – и именно эту задачу мы выполнили. Ниже приводим детализацию данных по процессорам для серверов, разворачиваемых нами с 2015 года, включая и количество ядер:
Читать дальше →

Когда Linux conntrack вам больше не товарищ

Время на прочтение5 мин
Количество просмотров41K

Отслеживание соединений (“conntrack”) является основной функцией сетевого стека ядра Linux. Она позволяет ядру отслеживать все логические сетевые соединения или потоки и тем самым идентифицировать все пакеты, которые составляют каждый поток, чтобы их можно было последовательно обрабатывать вместе.

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

Когда фильтр Блума не подходит

Время на прочтение9 мин
Количество просмотров16K


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

Взгляд изнутри на надёжность сервисов Facebook

Время на прочтение13 мин
Количество просмотров15K
Когда Facebook «лежит», люди думают, что это из-за хакеров или DDoS-атак, но это не так. Все «падения» за последние несколько лет были вызваны внутренними изменениями или поломками. Чтобы учить новых сотрудников не ломать Facebook на примерах, всем большим инцидентам дают имена, например, «Call the Cops» или «CAPSLOCK». Первый так назвали из-за того, что когда однажды соцсеть упала, в полицию Лос-Анджелеса звонили пользователи и просили его починить, а шериф в отчаянии в Твиттере просил не беспокоить их по этому поводу. Во время второго инцидента на кэш-машинах опустился и не поднялся сетевой интерфейс, и все машины перезапускали руками.

Элина Лобанова работает в Facebook последние 4 года в команде Web Foundation. Участники команды зовутся продакшн-инженерами и следят за надежностью и производительностью всего бэкенда, тушат Facebook, когда он горит, пишут мониторинг и автоматизацию, чтобы облегчить жизнь себе и другим.



В статье, основанной на докладе Элины на HighLoad++ 2019, расскажем, как продакшн-инженеры следят за бэкендом Facebook, какие инструменты используют, из-за чего возникают крупные сбои и как с ними справиться.

Оптимизируем СХД: кейс унификации и снижения стоимости владения

Время на прочтение6 мин
Количество просмотров4.3K
В статье описывается процесс оптимизации инфраструктуры хранения данных компании среднего класса.

Рассмотрены обоснования для такого перехода и краткое описание процесса настройки новой СХД. Приводим в пример плюсы и минусы перехода на выбранную систему.

Введение


Инфраструктура одного из наших заказчиков состояла из множества разнородных систем хранения данных разного уровня: от SOHO-систем QNAP, Synology для пользовательских данных до Entry и Mid-range систем хранения уровня Eternus DX90 и DX600 для iSCSI и FC для служебных данных и систем виртуализации.

Всё это различалось как по поколениям, так и по применяемым дискам; часть систем представляла из себя legacy оборудование, не имевшее поддержки вендора.

Отдельной проблемой было управление свободным местом, так как всё доступное дисковое пространство было сильно фрагментировано по множеству систем. Как следствие – неудобство администрирования и высокая стоимость содержания парка систем.

Перед нами встала задача оптимизации инфраструктуры хранения данных с целью снижения стоимости владения и унификации.

Поставленная задача была всесторонне проанализирована экспертами нашей компании с учётом требований заказчика к доступности данных, IOPS, RPO/RTO, а также возможности модернизации существующей инфраструктуры.
Читать дальше →

Лучшие серверы для малого бизнеса в 2020 году

Время на прочтение9 мин
Количество просмотров14K
image

Несмотря на широкое распространение облачных серверов многие выбирают локальные серверы, которые дают больше контроля. Портал TechRadar составил список 10 лучших серверов, начиная с тех, которые предназначены для небольших предприятий, и заканчивая теми, которые могут понадобиться крупным корпорациям.
Читать дальше →

4-ая платформа отходит от б/у сервера

Время на прочтение8 мин
Количество просмотров6.7K
Всем привет! Мы с коллегами столкнулись с дефицитом информации о развитии серверного оборудования, а также по сравнениям разных линеек при подборе конфигураций под самые ходовые нужды (по крайней мере те, с которыми мы в GaltSystems работаем чаще всего). Вспоминая нашу прошлогоднюю статью, мы подробно поговорим о серверном оборудовании, его эволюции и ряде сценариев использования.


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

Почему нужна инструментальная поддержка пагинации на ключах

Время на прочтение5 мин
Количество просмотров21K

Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф.



У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно обойтись продуманно выстроенными индексами — приходится искать какие-то обходные пути. Во время одного из таких скитаний по сети в поисках разумных оптимизаций при работе с БД я нашел бесконечно полезный блог Маркуса Винанда, автора книги SQL Performance Explained. Это тот самый редкий вид блогов, в котором можно читать все статьи подряд.


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

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

Особенности профилирования программ на C++

Время на прочтение13 мин
Количество просмотров31K

Временами бывает нужно отпрофилировать производительность программы или потребление памяти в программе на C++. К сожалению, зачастую это сделать не так просто как может показаться.

Здесь будут рассмотрены особенности профилирования программ с использованием инструментов valgrind и google perftools. Материал получился не очень структурированным, это скорее попытка собрать базу знаний «для личных целей», чтобы в будущем не приходилось судорожно вспоминать, «а почему не работает то» или «а как сделать это». Скорее всего, здесь будут затронуты далеко не все неочевидные случаи, если вам есть что добавить, пишите пожалуйста в комментарии.

Все примеры будут запускаться в системе linux.
Читать дальше →

HighLoad++, Юрий Насретдинов (ВКонтакте): как VK вставляет данные в ClickHouse с десятков тысяч серверов

Время на прочтение18 мин
Количество просмотров9.1K
HighLoad++ Moscow 2018, зал «Конгресс-холл». 9 ноября, 15:00

Тезисы и презентация: http://www.highload.ru/moscow/2018/abstracts/4066

Юрий Насретдинов (ВКонтакте): в докладе будет рассказано об опыте внедрения ClickHouse в нашей компании – для чего он нам нужен, сколько мы храним данных, как их пишем и так далее.



Дополнительные материалы: использование Clickhouse в качестве замены ELK, Big Query и TimescaleDB

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

Эволюция HighLoad приложения на примере регионального портала госуслуг

Время на прочтение7 мин
Количество просмотров5.8K
image

«Завтра 20-е число, а значит снова будет шторм. Остановить его невозможно, только подготовиться и надеяться, что в этот раз пронесет, случится чудо, и наш озерный паром покорит океан». Такие мысли одолевали команду, занимающуюся поддержкой портала муниципальных услуг еще несколько лет назад. Как мы попали в эту ситуацию и как мы из нее нашли выход будет рассказано ниже.
Читать дальше →

Использование Clickhouse в качестве замены ELK, Big Query и TimescaleDB

Время на прочтение11 мин
Количество просмотров29K
Clickhouse — это колоночная система управления базами данных для онлайн обработки аналитических запросов (OLAP) с открытым исходным кодом, созданная Яндексом. Ее используют Яндекс, CloudFlare, VK.com, Badoo и другие сервисы по всему миру для хранения действительно больших объемов данных (вставка тысяч строк в секунду или петабайты данных, хранящихся на диске).

В обычной, «строковой» СУБД, примерами которых служат MySQL, Postgres, MS SQL Server, данные хранятся в таком порядке:



При этом значения, относящиеся к одной строке, физически хранятся рядом. В столбцовых СУБД значения из разных столбцов хранятся отдельно, а данные одного столбца – вместе:

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

Где и как применяются граничные серверы

Время на прочтение5 мин
Количество просмотров5.5K


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

Добавить промежуточное звено, которое выполнит часть вычислений на границе локальной сети или производственного процесса. Эта периферийная концепция называется Edge Computing — «граничные вычисления». Концепция дополняет текущую облачную модель использования данных, и в этой статье мы рассмотрим необходимое оборудование и примеры задач для него.
Читать дальше →

Если данные не помещаются в память. Простейшие методы

Время на прочтение5 мин
Количество просмотров19K

Самка трубкозуба с детёнышем. Фото: Scotto Bear, CC BY-SA 2.0

Вы пишете программу для обработки данных, она отлично проходит тест на небольшом файле, но падает на реальной нагрузке.

Проблема в нехватке памяти. Если у вас 16 гигабайт ОЗУ, вы не сможете туда загрузить стогигабайтный файл. В какой-то момент у ОС закончится память, она не сможет выделить новую, и программа вылетит.

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

Как мы в ЦИАН укрощали терабайты логов

Время на прочтение6 мин
Количество просмотров19K


Всем привет, меня зовут Александр, я работаю в ЦИАН инженером и занимаюсь системным администрированием и автоматизацией инфраструктурных процессов. В комментариях к одной из прошлых статей нас попросили рассказать, откуда мы берем 4 ТБ логов в день и что с ними делаем. Да, логов у нас много, и для их обработки создан отдельный инфраструктурный кластер, который позволяет нам оперативно решать проблемы. В этой статье я расскажу о том, как мы за год адаптировали его под работу с постоянно растущим потоком данных.
Читать дальше →

Рынок б/у серверов в России: все начиналось с Хабра

Время на прочтение7 мин
Количество просмотров10K
Приветствую, username! Сегодня я расскажу тебе одну занимательную историю о нашем многострадальномгранном российском рынке. Я — один из сооснователей компании по продаже серверов б/у. И речь пойдёт о рынке B2B оборудования. Начну с ворчания: “Помню, как наш рынок под стол пешком ходил...” А сейчас он празднует свой первый юбилей (5 лет, как-никак), потому и захотелось слегка предаться ностальгии и рассказать, как всё начиналось.

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

Доживем до понедельника или как пережить чёрную пятницу

Время на прочтение3 мин
Количество просмотров4.2K
Завтра «Черная Пятница» — для интернет проектов это означает, что будут пиковые нагрузки на сайт. Их могут не выдержать даже гиганты, так например, случилось с Amazon в Prime Day в 2017 году. 



Мы решили привести несколько простых примеров работы с виртуальным сервером, чтобы избежать ошибок и не встречать народ 503 страницей или что еще хуже, About:blank и ERR_CONNECTION_TIMED_OUT. Остаётся один день, чтобы подготовиться.
Читать дальше →