- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет.
Есть две VPSки:
1. 2 ядра, 2ГБ, SSD
2. 1 ядро, 1ГБ, SSD
На обоих проводил эксперимент: ставил MariaDB 10.2.9, немного нагружал VPSку (для сбора статистики), потом запускал mysqltuner, выполнял рекомендации, которые он говорил. Как результат, производительность падала в разы (с ~13 rps, до 1-4 rps).
Пробовал тюнить вручную, по рекомендациям на хабре и других ресурсах. Как не пытайся, а дефолтный конфиг оказался самым быстрым, в лучшем случае мой конфиг оказывался не медленнее, но и не быстрее.
Вот сам эксперимент, результаты для VPS#2
Команда:
Бенчмарк производится сразу после mysql restart
Дефолтный конфиг:
Конфиг после этих рекомендаций
Какие ещё можно попробовать рекомендации, чтобы ускорить работу базы? Сами запросы переписать не могу, так как они в ядре.
Спасибо!
Ну как минимум включите лог медленных запросов, которые больше 2-х секунд выполняются. И смотрите их. Далее расстановка индексов.
Ну как минимум включите лог медленных запросов, которые больше 2-х секунд выполняются. И смотрите их. Далее расстановка индексов.
Лог медленных запросов включал, больше 1 секунды редко что выполняется (если не долбануть одновременно на не закешированный запрос), также включал лог запросов без индексов. Тогда начинает сыпать всяким, например вот:
У вас таблицы в Innodb или myaism ?
Сколько весят базы?
Сколько на сервер памяти выделено?
Вижу у вас магазин, какая у вас CMS?!
У вас таблицы в Innodb или myaism ?
Сколько весят базы?
Сколько на сервер памяти выделено?
Вижу у вас магазин, какая у вас CMS?!
Таблицы разные, есть и InnoDB, есть и MyISAM. Думаю больше InnoDB, основные так точно.
База весит 75 мб.
На самой VPS 1ГБ всего. Как узнать сколько на сервер БД выделено?
CMS Shop-Script.
Так переводите всё в InnoDB, оно всё будет в памяти хранится.
innodb_buffer_pool_size только выставите в 128 МБ что на запас.
Если после этого будет нагружать, ну тогда только файловый кэш.
Почему вы поставили такой замечательный форк mysql, но используете обычный InnoDB?
MariaDB может работать с XtraDB, который лучше и основан на InnoDB и совместим с ним.
Но ещё лучше будет с ним работать не MariaDB, а Percona Server.
Потом сразу же в глаза бросается наличие включенного binlog'а. Зачем он вам?
А рекомендациям тюнера вы следуете не до конца. И, конечно, их недостаточно.
Тюнер хорош для очень удобного сбора статистики, но его рекомендации лишь часть всей картины.
Это хорошо, но прежде чем тюнить вручную необходимо понимать то, как тот или иной параметр влияет на работу.
Просто так выставлять значения, взятые с чужих рекомендаций не надо. Они ведь были рекомендованы
в конкретной ситуации, при наличии конкретного железа, они не подходят вам и могут вызвать лишь падение
производительности.
А вообще не очень понимаю, зачем вы используете InnoDB... У вас почти все операции это чтение с базы,
записей очень мало. MyISAM в этом плане будет работать шустрее и ему понадобится меньше памяти, чем InnoDB.
Ему надо выделить память под индексы, в то время как у InnoDB надо выделить память размером со все базы.
Учитывая, что памяти на VPS у вас очень мало, что вы будете делать, когда база вырастет в размерах?)
Разумеется, при использовании такого форка как MariaDB, MyISAM надо заменить на Aria.
Кроме того - помимо mysql надо настраивать и остальное. Особенно если у вас есть вебсервер, там тоже
очень много параметров, которые влияют на производительность. А главное настроить и саму операционную
систему, иначе все эти вышеперечисленные манипуляции подействуют не полностью.
С добрым утром. Мария с 10,2 перешла на чистый оригинальный InnoDB читайте новости. Связанно это с тем, что разработчики mysql допилили все плюшки, которые были в марии. И теперь совместно работают над InnoDB
Также XtraDB чистого нет, это была надстройка над InnoDB и всё. Структура и т.д. было точно такое же. Поддержка была прозрачная, просто драйвер для работы назывался XtraDB отдельно его выбирать нельзя было.
С добрым утром. Мария с 10,2 перешла на чистый оригинальный InnoDB читайте новости. Связанно это с тем, что разработчики mysql допилили все плюшки, которые были в марии. И теперь совместно работают над InnoDB
С добрым :) Спасибо, почитал, буду знать...
Тогда тем более Percona будет лучше, как я и писал. Но вопрос - зачем ТС'у InnoDB остаётся открытым, а также то, что mysql его надо ещё настраивать и настраивать.
Но вопрос - зачем ТС'у InnoDB остаётся открытым, а также то, что mysql его надо ещё настраивать и настраивать.
Нечего там настраивать. Узкое место просто сама CMS и много запросов в БД для любому чиху, тут нужен кэш файловый.
Нечего там настраивать. Узкое место просто сама CMS и много запросов в БД для любому чиху, тут нужен кэш файловый.
Для максимальной производительности надо настраивать всё.
Да кэш понятное дело, но это ведь не панацея. Сервер должен быть настроен хорошо, стандартные параметры не подходят для реальных задач.
Код и БД, а также запросы к ней тоже должны быть оптимизированы должным образом. Но это в идеале, что в данном случае ТС сделать не может(