forum.bitel.ru http://forum.bitel.ru/ |
|
mysql и параметры thread_concurrency+thread_cache_size http://forum.bitel.ru/viewtopic.php?f=22&t=4593 |
Страница 1 из 1 |
Автор: | Dmitri [ 28 сен 2010, 15:23 ] |
Заголовок сообщения: | mysql и параметры thread_concurrency+thread_cache_size |
Уважаемые коллеги, подскажите, кто как использует данные параметры на linux-машинах. Что-то внятных пояснений по поводу использования thread_concurrency на линуксе - вообще нет. Тестили (mysql bench) разные комбинации, считали по формуле Ncpu*Ncore-per-cpu*3 - прирост - просто если различим! Что скажете? |
Автор: | snark [ 28 сен 2010, 20:07 ] |
Заголовок сообщения: | Re: mysql и параметры thread_concurrency+thread_cache_size |
Dmitri писал(а): считали по формуле Ncpu*Ncore-per-cpu*3 там вообще то такая формула: Код: # grep thread_concurrency /usr/local/share/mysql/my-huge.cnf # Try number of CPU's*2 for thread_concurrency thread_concurrency = 8 Dmitri писал(а): Уважаемые коллеги, подскажите, кто как использует данные параметры на linux-машинах. ... Что скажете? тестить и использовать смысла нет, т.к. в мануале по этому поводу довольно ясно сказано: MySQL manual писал(а): This variable is specific to Solaris systems, for which mysqld invokes the thr_setconcurrency() with the variable value.
|
Автор: | Dmitri [ 28 сен 2010, 20:59 ] |
Заголовок сообщения: | Re: mysql и параметры thread_concurrency+thread_cache_size |
Формула все-таки верна та, которая приведена у меня. Т.к.: Цитата: Но формула "Try number of CPU's*2 for thread_concurrency" хорошо работает лишь тогда, когда треды не лочатся на дисковом вводе/выводе. Поэтому, возникает ситуация, что запросы некому обработать, ибо все треды работают с диском И еще: Цитата: Если у вас много памяти и много таблиц, то для увеличения производительности, при запуске сервера рекомендуется использовать следующие формулы, учитывающие специфику работы mysql под различные ОС: » Для FreeBSD: thread_concurrency = (кол-во процессоров)*(кол-во ядер в одном процессоре) » Для Linux: thread_concurrency = (кол-во процессоров)*(кол-во ядер в одном процессоре)*3 Почему на Linux можно давать можно и нужно давать больше потоков, чем на FreeBSD? Это связано с тем, что Linux умеет распределять и управлять потоками между ядрами, а FreeBSD не умеет, зато FreeBSD умеет эффективно распределять процессы, чего, в свою очередь, не умеет Linux. И самое главное, по сути пруфлинк: http://www.dbbenchmark.com/wordpress/benchmarks/ |
Автор: | snark [ 28 сен 2010, 21:16 ] |
Заголовок сообщения: | Re: mysql и параметры thread_concurrency+thread_cache_size |
я привел официальную (не какой то там блог и/или статья, а мануал) точку зрения и верить ей или нет - Ваше дело ... я больше склонен верить мануалу чем чему бы то нибыло еще, да и а Вы сами убедились что установка этого параметра, если я правильно понял ваш пост, особой разницы не дает ... |
Автор: | Dmitri [ 04 окт 2010, 15:34 ] |
Заголовок сообщения: | Re: mysql и параметры thread_concurrency+thread_cache_size |
snark писал(а): я привел официальную (не какой то там блог и/или статья, а мануал) точку зрения и верить ей или нет - Ваше дело ... я больше склонен верить мануалу чем чему бы то нибыло еще, да и а Вы сами убедились что установка этого параметра, если я правильно понял ваш пост, особой разницы не дает ... Хммм. тогда что делать? Т.к. если запрос очень тяжелый, то он получается, полностью монополизирует ресурсы, разве это правильно? Как с этим бороться, кроме как переносом запросов в slave-базу? Почему mysql - не распределяет нагрузку? |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |