Postgresql Performansı - SHMMAX ve SHMALL'un Ayarlanması


9

Postgres performansını iyileştirmek için çevrimiçi olan her şeyi okudum, ancak SHMMAX ve SHMALL için "doğru" değerler hala beni atlatıyor.

Fikir birliği SHMMAX = total_memory / 4 ve SHMALL = total_memory / 2 güvenli başlangıç ​​değerleridir.

Ancak, SHMALL sayfalarda veya baytlarda ölçülebilir ve Ubuntu'da kullanılan herhangi bir bilgi bulamıyorum.

Ubuntu (veya daha genel olarak Debian) SHMALL için sayfa veya bayt kullanıyor mu?

Yanıtlar:


11

Kullandığım tüm Linux sistemleri SHMALLiçin sayfalarda ve SHMMAXbayt olarak ölçülür. Ben ipcsher zaman çıktısı sırasında KBytes yukarıda parametreleri dönüştüren komutunu kullanarak sisteminizi kontrol ve sysctldeğerleri ile karşılaştırabilirsiniz düşünüyorum :

[aseryozhin@centos ~]$ ipcs -l

------ Shared Memory Limits --------
max number of segments = 4096               // SHMMNI   
max seg size (kbytes) = 524288              // SHMMAX
max total shared memory (kbytes) = 8388608  // SHMALL
min seg size (bytes) = 1

[aseryozhin@centos ~]$ sysctl -e kernel.shmmax
kernel.shmmax = 536870912

[aseryozhin@centos ~]$ sysctl -e kernel.shmall
kernel.shmall = 2097152

[aseryozhin@centos ~]$ getconf PAGE_SIZE
4096

SHMMAX: 524288 * 1024 = 536870912

SHMALL: 8388608 * 1024/4096 = 2097152


2

Bu değişkenler belgelerde belirtildiği gibi bayt cinsinden ölçülür. Ben postgresql yapılandırma parametrelerine bakmak daha önemli olduğunu düşünüyorum. Gerektiğinde SHMALL / SHMMAX değerlerine bakmanız gerekir. Örneğin, maksimum bağlantı sayısını artırmak istiyorsanız, bu sınırları artırmanız gerekebilir.

Veritabanı sunucusunun ayarlanması, eşzamanlı bağlantı sayısı ve veritabanı boyutu gibi kullanım düzeninize bağlıdır. Bir yapılandırma parametresini artırmak her zaman iyi değildir.


2
Postgresql performansı söz konusu olduğunda, en düşük asılı meyveli paylaşılan_buffers'ı artırmak için SHMMAX'ın artırılması gerekir. Belgelere bir bağlantı ekleyebilir misiniz?
Enrico

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.