Что такое «свободная память»?

30

У Amazon RDS есть метрика для «свободной памяти». Кажется, он идет вверх и вниз в виде пилообразного узора.

Это заставляет меня поверить, что MySQL использует память для кеширования, и когда срок действия кеша истекает, появляется больше свободной памяти. Любая окончательная документация была бы отличной.

Адам Нельсон
источник
Привет, Адам, я искал Google и Yahoo. Никто нигде не публиковал входные данные Консоли управления AWS. Я также вижу, что вы публиковали этот вопрос на многих форумах в прошлом. Я надеюсь, что вы найдете ответ в ближайшее время.
RolandoMySQLDBA

Ответы:

22

Он включает в себя кэшированную память и память, используемую для буферов (помимо того, что действительно свободно / не используется). Все они будут освобождены, если приложение запрашивает больше памяти, чем свободно.

Джованни Тирлони
источник
10
Откуда эта информация? Это факт или предположение?
Самули Кярккяйнен,
17

Это в основном доступная оперативная память. Смотрите ответ от AWS здесь https://forums.aws.amazon.com/thread.jspa?threadID=209720 и официальную docusmtation здесь http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_BestPractices.html ,

Если у вас много свободной памяти, вы можете перейти на меньший экземпляр. Если вам не хватает свободной памяти, то пришло время обновить.

AstroTom
источник
«Если у вас много свободной памяти, вы можете перейти на меньший экземпляр». - Я подозревал это, но (неудивительно), что нигде в документах Amazon это не говорится.
ToolmakerSteve
3

Из этого раздела вопросов и ответов на форуме AWS :

Свободная память включает объем физической памяти, оставленной системой неиспользуемой, а также общий объем свободной или доступной памяти буфера или кеша страниц.

Так что это свободная память во всей системе. В то время как MySQL является основным потребителем памяти на хосте, у нас есть внутренние процессы в дополнение к ОС, которые используют небольшой объем дополнительной памяти.

Если вы видите, что ваша свободная память близка к 0 или также начинаете видеть использование подкачки, вам может потребоваться увеличить класс экземпляра или настроить параметры памяти MySQL. Например, уменьшение innodb_buffer_pool_size (по умолчанию установлено на 75% физической памяти) является одним из способов корректировки настроек памяти MySQL.

dr01
источник
1

FreeableMemory - это память, которая используется кешем ОС, и она будет возвращена при необходимости и не о чем беспокоиться.

fraank
источник