वेब पेज इतनी रैम क्यों लेते हैं?


25

Chrome में खुले पृष्ठों का एक गुच्छा छोड़ने के बाद, मेरा कंप्यूटर सुस्त हो जाता है। विंडोज टास्क मैनेजर से पता चलता है कि कुछ पेज बहुत अधिक रैम लेते हैं:

यहाँ छवि विवरण दर्ज करें

  1. वे इतनी रैम क्यों लेते हैं?
  2. क्या यह जानने का एक तरीका है कि प्रत्येक पृष्ठ कितना रैम लेता है, ताकि मैं जांच करूं?

धन्यवाद।


9
Chrome का अपना कार्य प्रबंधक भी है। और दर्ज करें chrome://memory-redirect/यदि आप कुछ और के लिए हैं।
slhck

1
पारितोषिक के लिए धन्यवाद। Chrome चालू करता है एक टैब / पृष्ठ के लिए एक प्रक्रिया का उपयोग नहीं करता है: एक प्रक्रिया एक टैब को इंगित कर सकती है और वेब पृष्ठों को गुणा कर सकती है, इसलिए मैं यह नहीं बता सकता कि कौन कितना रैम का उपयोग कर रहा है।
ओवर द रैनबो

जवाबों:


23

क्रोम ब्राउज़र बाजार में रैम का सबसे भारी उपभोक्ता है। यह बढ़ी हुई गति के लिए मेमोरी के उपयोग को बढ़ाता है। यदि आप उपलब्ध रैम पर कम चलाते हैं, तो यह बाजार में सबसे धीमा ब्राउज़र बन जाता है (एक की तुलना में जो कि हार्ड डिस्क में पेजिंग के बजाय पूरी तरह से रैम में बने रहने के लिए संसाधन उपयोग में काफी छोटा होगा।)

यहां क्रोमियम विकास टीम क्रोम में उपयोग किए जाने वाले इस मेमोरी मॉडल के अच्छे और बुरे पर चर्चा करती है

और यहां आप विभिन्न फ़ायरफ़ॉक्स के साथ वैकल्पिक मेमोरी मॉडल का उपयोग करने के लिए क्रोम को कॉन्फ़िगर कर सकते हैं, जिसमें "फ़ायरफ़ॉक्स स्टाइल" एकल प्रक्रिया मोड शामिल है: http://dev.chromium.org/developers/design-documents/process-models


8
  1. वेब पेज इतनी रैम क्यों लेते हैं?

क्रोम एक प्रति-प्रक्रिया मॉडल का उपयोग करता है जिसका अर्थ है कि प्रत्येक टैब (या संबंधित टैब के समूह) के लिए, यह एक अलग थ्रेड के बजाय एक अलग प्रक्रिया का उपयोग करता है। मूल रूप से इसका मतलब है कि प्रत्येक टैब एक अलग चलने वाला कार्यक्रम है। इस तरह, अगर कोई दुर्घटना होती है, तो वे पूरे ब्राउज़र को नीचे ले जाने के बजाय खुद से नीचे चले जाते हैं (यह प्लग और अधिकांश एक्सटेंशन के लिए भी यही काम करता है)।

इसके स्पष्ट लाभ हैं (सैंडबॉक्सिंग प्राथमिक एक है), लेकिन निश्चित रूप से यह इस तथ्य की तरह नुकसान भी है कि प्रत्येक में मेमोरी ओवरहेड है, जिसका अर्थ है कि क्रोम ब्राउज़र की तुलना में खुले पृष्ठों के समान सेट के लिए समग्र रूप से अधिक रैम का उपयोग करता है। प्रति-प्रक्रिया मॉडल का उपयोग न करें (क्रोम जारी होने के बाद से अन्य ब्राउज़र इस पद्धति की ओर बढ़ने लगे हैं)।

जैसा कि आपने नोट किया है, प्रति-प्रक्रिया नियम का मतलब यह नहीं है कि हर टैब की अपनी प्रक्रिया हो। यह इस बात पर निर्भर करता है कि पृष्ठ कैसे खोला गया। नए टैब में ओपन का उपयोग करना या नई विंडो में ओपन करना पेरेंट की तरह ही प्रक्रिया में पेज / लिंक को खोलता है, लेकिन इनकॉगनिटो विंडो में ओपन करने से यह एक नई प्रक्रिया में खुलता है जैसे कि नया टैब और नई विंडो कमांड।

एक और कारण यह है कि पेज बहुत सारी रैम लेते हैं, इन दिनों, अधिकांश वेब पेजों में बहुत सारे जावास्क्रिप्ट और फ्लैश शामिल होते हैं, जो सीपीयू और रैम दोनों को भारी बनाते हैं (जिसका अर्थ यह भी है कि पुराने सिस्टम इंटरनेट को ब्राउज़ नहीं कर सकते हैं जो कि आराम से हो, इसलिए ऐसा नहीं है लंबे समय तक ऐसी चीज "इस्तेमाल किया हुआ, पुराना, लेकिन अच्छा-ब्राउज़िंग सिस्टम")। इससे भी बदतर, प्लगइन्स और एक्सटेंशन (और संभवतः क्रोम भी) एक समय के बाद मेमोरी को लीक कर सकते हैं , जिससे समय में मेमोरी का उपयोग बढ़ जाता है।

  1. क्या यह जानने का एक तरीका है कि प्रत्येक पृष्ठ कितना रैम लेता है, ताकि मैं जांच करूं?

दुर्भाग्य से प्रति पृष्ठ मेमोरी उपयोग को देखने का कोई ज्ञात (आसान / आसान) तरीका नहीं है। निकटतम Shift+Escप्रक्रिया टैब स्ट्रिप को दबाने या राइट-क्लिक करने के लिए है और प्रति-प्रक्रिया मेमोरी उपयोग को देखने के लिए टास्क मैनेजर का चयन करें।

एक चीज जिसे आप आजमा सकते हैं, वह है कि प्रत्येक पृष्ठ को एक नई प्रक्रिया में (एक पूर्वोक्त विधियों में से एक का उपयोग करके) खोलें और फिर तुलना करें।


धन्यवाद, मैं इस जवाब के लिए सवाल पूछने वाला था। मैं विश्वास नहीं कर सकता कि एक साधारण वेब पेज 300MB कैसे ले सकता है।
फेडरिको पोंजी

1

स्पैनर, टूल, डेवलपर टूल, ऑडिट आज़माएं

आपके वेब पेज की दक्षता में सुधार के लिए बहुत सारे सुझाव क्यों अन्य लोगों के विशिष्ट वेब पेज अत्यधिक संसाधनों का उपयोग करते हैं।


मैं अपने वेब पेजों के बारे में बात नहीं कर रहा हूं, बल्कि उन वेब पेजों के बारे में जो मैं नेट पर पढ़ रहा हूं और इतनी रैम को चूस रहा हूं कि मुझे उन्हें बुकमार्क करना है, क्रोम को रीस्टार्ट करना है और फिर से पेज खोलना है।
15/11 ओवर द रैनबो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.