Pull to refresh

Comments 27

а где график загрузки CPU на этом же сервере после включения сжатия?
Дальше бы посмотреть. У вас слева на графике видна высокая загрузка, включение сжатия ощутимо повысило нагрузку на процессор. Интересно посмотреть на результат сложения первого и второго.
Завтра скину графики, можно будет сравнить за сутки.
Вы хотите сложить огурцы с помидорами?
Для такой оценки нужно придумать веса параметрам, например 2*огурцы+3*помидоры.
Веса исходят из текущей ситуации…
Поясняю: на графиках нагрузки процессора есть большой всплеск слева. При этом он коррелирует с нагрузкой на сетевой интерфейс, но отличается по нагрузке от дневной части графика.
Сжатие сетевого обмена увеличило нагрузку на процессор, в дневной части графика все хорошо. Но был ли смысл увеличивать нагрузку на процессор для варианта нагрузки аналогичного времени слева по графику?
Слева по графику была несколько иная нагрузка — в тот момент на этом же сервере работало приложение.

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

Вы статью, на которую ссылку даете, читали?

Там написано, если что, что компрессию надо включать, если у вас передаются большие объемы данных и при этом тонкий линк между физическими машинами.
Тонкий линк — понятие весьма относительное. В моем случае «тонкий линк» — это 100 Mbit/s, из-за которых в течение дня несколько раз возникала кратковременная недоступность приложения.

Стоит так же взять во внимание тарифы хостеров. К примеру, в Hetnzer не всегда удобно покупать локальную сеть между серверами, а если гнать много трафика по гигабитному каналу, получаются большие счета.
В моем случае «тонкий линк» — это 100 Mbit/s, из-за которых в течение дня несколько раз возникала кратковременная недоступность приложения.

Какие объемы вы передаете, и зачем?

Стоит так же взять во внимание тарифы хостеров. К примеру, в Hetnzer не всегда удобно покупать локальную сеть между серверами, а если гнать много трафика по гигабитному каналу, получаются большие счета.

Вот и выясняется, что дело не в производительности, а в деньгах. Что совсем другое.
Вот и выясняется, что дело не в производительности, а в деньгах. Что совсем другое.


Вы считаете, что нужно увеличивать пропускную способность и это будет способствовать лучшей производительности? А когда канала станет мало, выстраивать серверы рядом друг с другом, обматывать локалкой, делать bonding?

Какие объемы вы передаете, и зачем?


Сайт на Wordpress (достаточно большая посещаемость), включено всевозможное кэширование. В код не лезем, это нам неподвластно.
Вы считаете, что нужно увеличивать пропускную способность и это будет способствовать лучшей производительности?

Я считаю, что нужно сначала найти боттлнек, а потом решать его максимально эффективным способом.

В код не лезем, это нам неподвластно.

Эгм, а как же тогда планируете компрессию включить?
Согласитесь, повлиять на включение одного флага в функции mysql_connect (если говорить о php) значительно проще, чем провести аудит кода и выполнить доработки (порой значительные).

Я согласен, что такой подход не всегда оптимален, но порой это решение может значительно улучшить картину.
Нет, не соглашусь. Либо вы вмешиваетесь в код, либо нет. А простое включение флага в mysql_connect (а я еще и не удивлюсь, если это происходит в одном месте на весь код, из соображений какого-нибудь DRY) может привести к произвольным последствиям.

Ну нельзя, нельзя такие вещи делать без подробного бенчмаркинга.
Есть и другая сторона медали. Проекты бывают разные, иногда более рационально поставить такой костыль (в идеале, конечно, временный), чем потратить уйму денег на доработку приложения (порой требуется переписать все — в нашей практике достаточно таких поддерживаемых проектов).
«Более рационально» может быть выявлено только по результатам бенчмарков. О чем я вам сразу и говорил.
UFO just landed and posted this here
За достаточно большое количество денег вам устроят любую производительность.

Вопрос в том, чтобы получать наибольшую производительность за наименьшие деньги.
UFO just landed and posted this here
У меня просто в 1ске подобная картинка между mssql и сервером 1с :)
Sign up to leave a comment.