Обновить
64K+

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

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

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

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

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

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

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

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

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

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

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

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



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

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

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

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

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

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

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



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

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

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

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


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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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



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

Битва L2TP, RRAS vs SoftEther

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

«Украденная с запада картинка для привлечения внимания»

В прошлых наших статьях мы рассказали, как работать с VDS на Windows Server Core 2019 на нашем новом тарифе UltraLight за 99 рублей в месяц. Предлагаем еще один способ использования данного тарифа. На этот раз речь пойдет о том, что лучше выбрать, если вам нужен VPN для ленивых или статический IP адрес, который кстати удобнее использовать вместо Hamachi и всего остального, если очень хочется поиграть в героев или Warcraft 3 по локальной сети. Речь не пойдет о настройке, поговорим о производительности.
Читать дальше →

Как устроен поиск Яндекс.Маркета и что будет, если упадёт один из серверов

Время на прочтение11 мин
Охват и читатели20K
Привет, меня зовут Евгений. Я работаю в инфраструктуре поиска Яндекс.Маркета. Хочу рассказать сообществу Хабра о внутренней кухне Маркета – а рассказать есть что. Прежде всего, как устроен поиск Маркета, процессы и архитектура. Как мы справляемся с внештатными ситуациями: что случится, если упадёт один сервер? А если таких серверов будет 100?

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


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

Как протестировать производительность серверов: подборка из нескольких open source бенчмарков

Время на прочтение3 мин
Охват и читатели12K
Продолжаем нашу серию материалов, посвященную тестированию производительности серверов. Сегодня поговорим о паре проверенных временем бенчмарках, которые до сих пор поддерживают и обновляют — NetPerf, HardInfo и ApacheBench.

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

Intel Xeon E-2200. Серверные ядра, бюджетно

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


Вслед за большим обновлением Intel Xeon W для рабочих станций трудоголиков увидели свет новые Xeon E — процессоры для серверов начального уровня. По сравнению с предшественниками количество ядер увеличилось, а цена осталась на прежнем уровне — то есть в пересчете на ядро Xeon E также подешевели.
Читать дальше →

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

Performance in .NET Core

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

Performance in .NET Core


image

Всем привет! Данная статья является сборником Best Practices, которые я и мои коллеги применяем на протяжении долгого времени при работе на разных проектах.

Информация о машине, на которой выполнялись вычисления:
BenchmarkDotNet=v0.11.5, OS=Windows 10.0.18362
Intel Core i5-8250U CPU 1.60GHz (Kaby Lake R), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=3.0.100
[Host]: .NET Core 2.2.7 (CoreCLR 4.6.28008.02, CoreFX 4.6.28008.03), 64bit RyuJIT
Core: .NET Core 2.2.7 (CoreCLR 4.6.28008.02, CoreFX 4.6.28008.03), 64bit RyuJIT
[Host]: .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), 64bit RyuJIT
Core: .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), 64bit RyuJIT

Job=Core Runtime=Core

ToList vs ToArray and Cycles

Читать далее...

Устанавливаем GUI на Windows Server Core

Время на прочтение2 мин
Охват и читатели82K
В прошлом нашем посте мы рассказали как готовим стандартные клиентские виртуальные машины и показали на примере нашего нового тарифа с Ultralight windows vds за 99 рублей, как мы создавали стандартный образ Windows Server 2019 Core.

В службу поддержки стали поступать заявки как работать с Server 2019 Core без привычной графической оболочки. Мы решили показать работу с Windows Server 2019 Core и как установить на него GUI.



Не повторяйте это на рабочих машинах, не используйте Server Core как рабочий стол, отключите RDP, обезопасьте свою информационную систему, именно безопасность — это главная фишка «Core» инсталляции.

В одной из следующих наших статей мы рассмотрим таблицу совместимости программ с Windows Server Core. В этой статье мы затронем то, как установить оболочку.
Читать дальше →

Оптимизация распределения серверов по стойкам

Время на прочтение6 мин
Охват и читатели8.2K
В одном из чатов мне задали вопрос:

— А есть что-то почитать, как правильно упаковывать сервера в стойки?

Я понял, что такого текста не знаю, поэтому написал свой.

Во-первых, этот текст про физические сервера в физических дата центрах (ДЦ). Во-вторых, считаем, что серверов достаточно много: сотни-тысячи, для меньшего количества этот текст не имеет смысла. В-третьих, считаем, что у нас есть три ограничителя: физическое место в стойках, электропитание на стойку, и пусть стойки стоят в рядах, так что мы можем использовать один ToR свитч для подключения серверов в соседних стойках.
Ответ на вопрос сильно зависит от того...

Как мы делали тариф для Windows VPS за 99 рублей

Время на прочтение3 мин
Охват и читатели17K
Если вы являетесь клиентом VDS-хостинга, задумывались ли вы о том, что идет в комплекте со стандартным образом операционной системы?

Мы решили поделиться, как мы готовим стандартные клиентские виртуальные машины и покажем на примере нашего нового тарифа Ultralight за 99 рублей, как мы создавали стандартный образ Windows Server 2019 Core, а также расскажем, что в нем изменилось.


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

Check Point: оптимизация CPU и RAM

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

Здравствуйте, коллеги! Сегодня я хотел бы обсудить очень актуальную для многих администраторов Check Point тему «Оптимизация CPU и RAM». Нередки случаи, когда шлюз и/или менеджмент сервер потребляют неожиданно много этих ресурсов, и хотелось бы понять, куда они “утекают”, и по возможности грамотнее использовать их.

1. Анализ


Для анализа загрузки процессора полезно использовать следующие команды, которые вводятся в экспертном режиме:
Читать дальше →

[Не] используйте CDN

Время на прочтение10 мин
Охват и читатели25K
Практически в любой статье или инструменте для оптимизации скорости сайтов есть скромный пункт «используйте CDN». Вообще, CDN – это content delivery network или сеть доставки контента. Мы в компании «Метод Лаб» часто встречаемся с вопросами клиентов по этой теме, некоторые самостоятельно включают себе CDN. Цель этой статьи разобраться, что может дать CDN с точки зрения скорости загрузки сайта, какие проблемы могут возникать и в каких случаях использование CDN оправдано.

image

Обведённые на картинке задержки вызваны использованием CDN.
Читать дальше →

Serverless: на 15% медленнее и в восемь раз дороже

Время на прочтение4 мин
Охват и читатели16K
Недавно я решил поэкспериментировать с API на нашем сайте CardGames.io и попробовать фреймворк Serverless. Последние несколько лет он стал горячей темой в мире технологий, а я прокрастинировал хотел поддерживать технические навыки в актуальном состоянии и попробовать что-то новое. Поэтому решил потратить несколько часов на изучение Serverless и посмотреть, есть ли смысл в таком размещении API.

Текущая конфигурация


CardGames.io работает на AWS. Все html-страницы, CSS, JavaScript и изображения хранятся на S3. У нас есть API на C#, размещённый на Elastic Beanstalk, он работает на серверах Linux под управлением .NET Core с Docker. Наконец, мы используем CloudFront CDN перед статикой на S3 и API. Ниже приведён счёт EC2 за август 2019 года. У нас есть несколько других инстансов, но API работают на m1.small (да, вероятно, t2.small лучше подходит) с классической балансировкой нагрузки. Если суммировать выделенное красным, то выходит $164,21 в месяц, неплохо. Я даже включил туда EBS, поскольку не уверен, как разбить эти расходы, у нас ведь несколько проектов на EC2.
Читать дальше →