
Я хочу создать высокую доступность с репликацией Master-Slave (для запроса Select).
Мне интересно, какой из них лучше:
- Имея меньшие ресурсы подчиненных, но больше серверов или
- Имея больше ресурсов подчиненных устройств, но меньше серверов
Я использую только один главный сервер для запроса на изменение: (обновление / вставка / удаление)
решение1
Это зависит.
Наиболее вероятно, что нужно настроить в оборудовании — это RAM. Если вы настроитесь innodb_buffer_pool_size
примерно на 70% RAM, а это больше, чем размер всех данных, то будет очень мало ввода-вывода.
Если это непрактично (или слишком дорого), то если «размер рабочего набора» достаточно мал, вы все равно получите выгоду от этого кэша.
В противном случае вам понадобится некоторая вычислительная мощность ввода-вывода.
Не беспокойтесь о скорости или количестве ядер ЦП. Это редко бывает узким местом.
Используйте это, чтобы узнать, какие запросы больше всего нуждаются в оптимизации: http://mysql.rjweb.org/doc.php/mysql_analysis#slow_queries_and_slowlog
Добавьте 2 дешевые копии и посмотрите, насколько хорошо они себя покажут, а затем вернитесь с дополнительными цифрами для обсуждения.