Гейзенберг говорит, что это будет неэффективно.(Ладно, может быть, это плохой перефразирование.)
У вас нет миллионов пользователей в то же время , кабели Ethernet будут таять.
Что выхотеть сделать?Скажите «ваши данные не в кеше, поэтому вы не можете получить доступ к своей учетной записи»?Я сомневаюсь в этом.
Базовая строка для миллиона пользователей может занять 0,1 ГБ.Насколько крошечный ваш компьютер?
Хорошо, я серьезно.
Нет, нет способа спросить, кэшируется ли строка в buffer_pool.
Iутверждают, что нет необходимости спрашивать.Подумайте, что значит быть «кэшированным» (в механизме LRU).Пользователь, который возвращается до того, как его запись вышла из кеша, найдет ее в памяти;другим пользователям потребуется несколько миллисекунд дополнительная задержка для получения своих данных.И это предполагает, что у вас нет места для постоянного кэширования всего 0,1 ГБ (после разогрева buffer_pool).
В качестве аналогии подумайте о новостных статьях.Всем нужны «сегодняшние новости», поэтому эти несколько строк остаются в кэше.Периодический запрос новостей за последний месяц занимает немного больше времени.
Увеличенная картинка ... Допустим, весь ваш набор данных слишком велик для буферного пула.Тогда оптимизация заключается в минимизации попаданий на диск .Если вместо этого у вас неэффективное сканирование таблиц (из-за отсутствия соответствующих индексов), из-за слишком быстрого извлечения из кеша происходит слишком много.
Если вы хотите подробнее обсудить производительность веб-страницы php, дайте нам несколько подсказок:размер набора данных, объем оперативной памяти, типы запросов и т. д.