Postgresql प्रदर्शन - SHMMAX और SHMALL को समायोजित करना


9

मैंने पोस्टग्रेज के प्रदर्शन में सुधार के बारे में ऑनलाइन सब कुछ पढ़ा है, लेकिन SHMMAX और SHMALL के लिए "सही" मान अभी भी मुझे बाहर निकालता है।

सर्वसम्मति से लगता है SHMMAX = Total_memory / 4 और SHMALL = कुल_memory / 2 सुरक्षित शुरुआती मान हैं।

हालाँकि, SHMALL को पृष्ठों या बाइट्स में मापा जा सकता है और मुझे इसके बारे में कोई जानकारी नहीं मिल सकती है जिसका उपयोग उबंटू में किया जाता है।

क्या Ubuntu (या अधिक सामान्यतः डेबियन) SHMALL के लिए पृष्ठों या बाइट्स का उपयोग करता है?

जवाबों:


11

सभी लिनक्स प्रणालियों के लिए जो मैंने उपयोग किया SHMALLहै, उन्हें पृष्ठों SHMMAXमें मापा जाता है और बाइट्स में मापा जाता है। मुझे लगता है कि आप ipcsकमांड का उपयोग करके अपने सिस्टम की जांच कर सकते हैं , जो आउटपुट के दौरान हमेशा केबीटीस में मापदंडों से ऊपर होता है, और sysctlमूल्यों के साथ तुलना करें :

[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

इन चर को बाइट्स में मापा जाता है जैसा कि प्रलेखन में कहा गया है। मुझे लगता है कि postgresql कॉन्फ़िगरेशन पैरामीटर को देखना अधिक महत्वपूर्ण है। जरूरत पड़ने पर आपको SHMALL / SHMMAX मूल्यों को देखना होगा। उदाहरण के लिए, यदि आप कनेक्शन की अधिकतम संख्या बढ़ाना चाहते हैं, तो आपको इन सीमाओं को बढ़ाने की आवश्यकता हो सकती है।

डेटाबेस सर्वर को ट्यूनिंग आपके उपयोग पैटर्न पर निर्भर करता है जैसे कि एक साथ कनेक्शन की संख्या और डेटाबेस का आकार। एक कॉन्फ़िगरेशन पैरामीटर बढ़ाना हमेशा अच्छा नहीं होता है।


2
SHMMAX को साझा करने के लिए बढ़ाने की आवश्यकता है ताकि शेयर्स को बढ़ाने के लिए जो कि सबसे कम लटका हुआ फल है, जब यह पोस्टग्रैसेफिक प्रदर्शन के लिए आता है। क्या आप दस्तावेज़ में लिंक जोड़ सकते हैं?
एनरिको

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.