का मेमोरी उपयोग प्ले फ्रेमवर्क के मेमोरी उपयोग पर बस एक त्वरित सवाल है। मेरे पास एक उत्पादन उदाहरण है, जो 680768 केबी स्मृति का उपयोग करता प्रतीत होता है। इसमें से अधिकांश स्वैप में स्थित है।Playframework
(वर्चुअल) सर्वर के बारे में 750 एमबी है, लेकिन MySQL सर्वर और 12 अपाचे वर्चुअल सर्वर भी चलाता है। कभी-कभी छोटी अवधि के लिए अस्थायी संवाददाता (या बहुत धीमी) बन जाती है। मुझे लगता है कि यह स्वैपिंग के कारण है (यह सीपीयू नहीं है)।
रूपरेखा है कि अधिक स्मृति की जरूरत है? मैं मेमोरी उपयोग को JVM पैरामीटर -Xmx256m
या उसके साथ सीमित कर सकता हूं, लेकिन इसमें क्या मूल्य डालना है, और इसका कारण यह है कि यह कितनी मेमोरी का उपयोग करता है?
इस खेल से उपयोग है! पहले और शुरू होने के बाद:
जावा: ~~~~~ संस्करण: 1.6.0_26 होम: /usr/lib/jvm/java-6-sun-1.6.0.26/jre अधिकतम स्मृति: 194,641,920 नि: शुल्क स्मृति: 11,813,896 कुल स्मृति: 30,588,928 उपलब्ध प्रोसेसर: 2
पुनः आरंभ करने के बाद: जावा: ~~~~~ संस्करण: 1.6.0_26 होम: /usr/lib/jvm/java-6-sun-1.6 .0.26/जेआर अधिकतम मेमोरी: 1 9 4641920 मुफ्त मेमोरी: 98 9 3688 कुल मेमोरी: 21 9 46368 उपलब्ध प्रोसेसर: 2
ऐसे प्रश्न का उत्तर देना बेहद मुश्किल है। यह कई कारकों (जटिलता, कैशिंग, आदि) पर निर्भर करता है - प्ले! एक स्टेटलेस डिज़ाइन को प्रोत्साहित करता है, ताकि स्मृति उपयोग थोड़ा अधिक लगता है (हालांकि जावा के लिए आश्चर्य की बात नहीं है)। क्या आपने सर्वर को पुनरारंभ करने का प्रयास किया और देखा कि मेमोरी पदचिह्न कम हो गया है या नहीं? इसके अलावा, एक मेमोरी डंप आपको इस संकेत को आवंटित करने का संकेत दे सकता है। –
क्या आप स्मृति आउटपुट भेज सकते हैं जो प्ले स्टेटस आपको (स्थिति की शुरुआत में) देता है। मेरे भाग के लिए मैं बिना किसी समस्या के -Xmx64Mo के साथ प्ले एप्लिकेशन चला रहा हूं। यदि आपको अधिक मेमोरी की आवश्यकता है, तो आपके कोड –
में कुछ मेमोरी लीक हो सकती है, मैं इसे प्रश्न में जोड़ दूंगा। वर्तमान 665 एमबी का केवल 71 एमबी सक्रिय स्मृति (शीर्ष) में है। 665 एक स्थिर पर्याप्त आंकड़ा लगता है। Play के पीछे हटने के बाद! आवेदन (और कम से कम एक अनुरोध) शीर्ष पर रिपोर्ट की गई स्मृति 524 मीटर है। (प्रश्न में प्ले द्वारा रिपोर्ट की गई मेमोरी उपयोग डालें) –