Выбор сервера для mysql под нагрузкой

baas
На сайте с 17.09.2012
Offline
128
138

Добрый вечер.

Посоветуйте, что лучше для сервера баз mysql количество ядер/потоков или тактовая частота?

Сервер баз мускула нагружен, сейчас на сервере с( Intel Xeon E3-1270v6) 4 ядра 8 потоков, нагрузка 100% процессора при обновлении товара, проходит не быстро пару часов.

Обновления товара 3-4 раза в неделю, в штатном режиме сервер использует процессор на 2-3ядра.

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

В базе очень много запросов select/insert.

База примерно 20-25гигов весом.



Настройка BSD систем. (https://www.fryaha.ru) Знание сила, незнание Рабочая сила!
Евгений Крупченко
На сайте с 27.09.2003
Online
165
#1

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

Как именно - надо смотреть предметно что конкретно там происходит. Если параллельно много скриптов долбят mysql - логично ограничить их количество. Сделать чтоб весь этот процесс проходил более однопоточно и оставались ненагруженные ядра для работы всего остального. Чисто железом, не меняя ничего программно, вопрос не решить - все равно будет все та же 100% загрузка, но просто другое количество времени. Можно лишь минимизировать ущерб (тормоза в других задачах помимо обновления) ограничив количество этих тяжелых потоков.

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

Есть процессоры 8-10-ядерные аналогичной 4+ггц частоты, но очевидно стоить это будет заметно дороже... и опять же, 2ч станут 1ч, но все равно моменты тормозов со 100% загрузкой никуда не уйдут.

S
На сайте с 23.05.2004
Offline
293
#2
По не проверенным данным народ хвалит Ryzen 3700x в работе с бд.  Мол перешли с зеона и все летает.   Сам не проверял, что слышал, о том и пою :)

Это просто мой личный сайт (https://phpdevs.com/) в моей подписи.
M
На сайте с 19.02.2008
Offline
97
#3
my.cnf показали бы для начала и ram сколько ? Может и переезжать не нужно.
Евгений Крупченко
На сайте с 27.09.2003
Online
165
#4

Ну конечно :) райзен какой-то конкретный против зеона одного общего в целом.

Вопрос не в том. Если задача тяжелая многопоточная, то она на 100% загрузит абсолютно любой процессор. И в плане "летает" - все равно задача на несколько часов не станет за секунду выполняться ни на каком процессоре.

Тут только ускорять/оптимизировать саму задачу и/или ограничивать ее до количества ядер чуть меньшего чем все чтоб не ложить сервер наглухо.

baas
На сайте с 17.09.2012
Offline
128
#5
Евгений Крупченко #:

Ну конечно :) райзен какой-то конкретный против зеона одного общего в целом.

Вопрос не в том. Если задача тяжелая многопоточная, то она на 100% загрузит абсолютно любой процессор. И в плане "летает" - все равно задача на несколько часов не станет за секунду выполняться ни на каком процессоре.

Тут только ускорять/оптимизировать саму задачу и/или ограничивать ее до количества ядер чуть меньшего чем все чтоб не ложить сервер наглухо.

my.cnf показать смысла нет, там все в порядке.

Оперативки 32 гига сейчас, пул innidb выделен 21гиг.

Два сервера под файлы и базы сейчас, файлы и базы лежат на дисках nvme  1TB Intel DC P4510, под сами системы диск ssd  обычный.

Нагрузка базы только при обновлении товара, товара очень много.

Вижу ОЧЕНЬ много запросов join без индексов, вот они и создают нагрузку, прогер сказал что их оптимизировать не получится.

Пока есть план по смене сервера.

Думаю с начало взять сервер с камнем Intel® Xeon® E-2288G.

Если эффект будет мал, то поменяем сервер на двух процессорник 2x Xeon Silver 4210 его я думаю будет достаточно.

skapunker
На сайте с 15.01.2014
Offline
176
#6
В облако отправь базу данных, на Яндекс облако, или какой нибудь амазон RDS
Я единственный СЕО гуру на этом сайте. Царь и король веб-мастеринга.
baas
На сайте с 17.09.2012
Offline
128
#7
skapunker #:
Яндекс облако

1 Данные должны быть на территории России.

2 Для наших нужд, дешевле взять сервер в аренду, чем использовать облако!

M
На сайте с 19.02.2008
Offline
97
#8
baas #:

my.cnf показать смысла нет, там все в порядке.

Оперативки 32 гига сейчас, пул innidb выделен 21гиг.

Два сервера под файлы и базы сейчас, файлы и базы лежат на дисках nvme  1TB Intel DC P4510, под сами системы диск ssd  обычный.

Нагрузка базы только при обновлении товара, товара очень много.

Вижу ОЧЕНЬ много запросов join без индексов, вот они и создают нагрузку, прогер сказал что их оптимизировать не получится.

Пока есть план по смене сервера.

Думаю с начало взять сервер с камнем Intel® Xeon® E-2288G.

Если эффект будет мал, то поменяем сервер на двух процессорник 2x Xeon Silver 4210 его я думаю будет достаточно.

Берите тогда новый сервак, да подороже,  тему в корзину

D
На сайте с 28.06.2008
Offline
993
#9
ПОчти уверен что оптимизация запросов выйдет кратно дешевле нового сервера даже на интервале одного года

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий