Прекрасный тест! :-)
Дейстивтельно :-) Потому как именно Петя в 2008 году говорил строго обратное :-)
Ну, я только за себя говорить могу - поэтому такой пример и привел. Но люди, которые всерьез нанимаются тюнингом высоконагруженного mysql настоятельно отговаривали от использования кэша :-)
Не, это мертвому припарки. Там программисты уже озадачены переписыванием всего этого на мемкэше с периодическим дампом в mysql.
хитрейт - порядка 60%. Но на той железке - около 90% апдейтов. Копеечного размера таблицы, нормированые - но с часто обновляемыми данными.
Включение кэширования добавляет накладных расходов на выполнение некэшируемого запроса - и этого оказывается достаточно, чтобы все начало тормозить.
Ну, в принципе, про now() мог и соврать :-)
query_cache внутри - простой, как молоток. Фактически, это просто хэш в памяти, где ключем выступает строка запроса.
Поэтому реальный плюс от него - только в запросах вида "select * from table;". Более того, запрос "select id from table where name="asdf";" и "SELECT id from table where name="asdf";" - это разные запросы.
Что еще веселее - оно кэшиурет запросы "select ... where dtime = now();". Учитывая, что сам кэш - fifo - это офигительно сказывается на КПД :-)
Да, в проектах "домашняя страничка василия пупкина" это работает прекрасно. Если же у вас идеологически верная архитектура, и правильно спроектированная БД - то query_cache не поможет, а только навредит.
Я вам страшное скажу.
query_cache работает хреново :-)
Если я на машине с 8k qps включаю query_cache - qps падает до 3-5k, вагон локов в базе, крах, крушение всех надежд ;-)
Выключаю - все опять хорошо.
Причины объяснять надо? :-)
Крашится все :-)
Только вот райзер застрял, и развиваться больше по-человечески не будет, Хансу еще сидеть и сидеть :-)
Outsourcenow добавил 11.02.2009 в 12:16
Thanks, Capt.! :-)
А, кстати, почему генту внутри? Почему не центос?
По мне - наклепать свой собственный репозиторий со сборками всякого хлама так, как надо - наиболее удобный вариант.
Конечно не надо :-)
Прекрасно, что он там есть - но это не сглаживает впечатление от ублюдочного dpkg :)