Задать вопрос
@cat_crash

Почему Ubuntu 10.04 (Postgres?) не равномерно съедает ресурсы (память)?

Доброго дня


У меня есть боевой сервак с Ubuntu 10.04 на борту и 6 GB оперативки. Не первый месяц наблюдаю что при довольно объемистых запросах в Postgres (9.1) пик памяти не привышает 1.5 Гб при общем объеме в 6 Gb

Вот такая картина — почти всегда в «рабочее» время e967ded16fe83133156e2451127e0c59.png


Вопрос — как заставить систему использовать ресурсы по максимуму?

P.s. в настройках postgres стоит

shared_buffers = 1024MB # min 128kB


но по факту поднимал до 4 Gb — картина не менялась


Значение ядра shmmax установлено в 2150 Megabytes

cat /proc/sys/kernel/shmmax
2147483648
  • Вопрос задан
  • 3005 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
DurRandir
@DurRandir
1. shared_buffers = 1024MB
Это, в общем-то, и есть ответ на ваш вопрос.
2. Возможно, увеличивать этот параметр и не надо (а надо — другие, или вообще всё относительно неплохо). Это зависит от характера нагрузки и т.д. и т.п. К примеру, если у вас OLAP-база с фулсканами, то что бы вы не делали, всё упрётся в скорость дисков.

У вас вывод от чего-то странного — покажите на всякий случай free -m.

Из того, что стоит почитать, — wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server, rhaas.blogspot.com/2012/03/tuning-sharedbuffers-and-walbuffers.html.
Ответ написан
Комментировать
@Ruma7a
cat /proc/sys/vm/swappiness

Поиграйтесь с этим параметром. Чем меньше, тем менее активно ядро будет пытаться свопить.

Можно попробовать установить его в '0' (echo 0> /proc/sys/vm/swappiness).
Ответ написан
Самого главного не написали: каков объем базы данных и какая её часть используется при выполнении запросов? Может быть все необходимые данные уже в памяти?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы