मेरी रैम बढ़ाना स्मृति में मेरे w3wp.exe के आकार को कम करेगा

मेरे पास एएसपीनेट वेबसाइट है। मेरे पास छवि को 720x576 के आकार के साथ हर बार जितनी बार संभव हो सके टाइमर के माध्यम से अपडेट किया जा रहा है। आईएमजी नियंत्रण के बाद पिछली छवि लोड करने के बाद मेरी छवि प्राप्त करने के लिए अगली एशक्स पेज कॉल शुरू करके छवि को अपडेट किया जा सकता है (मैं इसे 'ऑनलोड' ईवेंट पर करता हूं)।

मेरा w3wp.exe वर्तमान में 140,000k पर है और यह 130,000 तक गिर जाता है। इन 2 मानों के बीच अक्सर ऊपर और नीचे जा रहा है।

चूंकि मैं 1 उपयोगकर्ता के साथ परीक्षण कर रहा हूं और जैसा कि मैं एक सस्ते वीपीएस पर होस्टिंग वातावरण साझा कर रहा हूं, मेरा सवाल यह है कि जब मैं लाइव जाऊंगा तो w3wp.exe अनियंत्रित हो जाएगा या यह तथ्य होगा कि मेरे सर्वर पैकेज को अपग्रेड करके (मुख्य रूप से रैम बढ़ाना) रखने में मदद करता है यह सब नियंत्रण में बहु-उपयोगकर्ता पर्यावरण?

यह मेरा जावास्क्रिप्ट है:

        var timer3;
        var intervalLive = 50;

        function play2() {
            if (timer3) window.clearTimeout(timer3);
            swapImages3();
        }

        function setImageSrc3(src) {
            _imgLive.src = src;
            timer3 = window.setTimeout(swapImages3, intervalLive);
        }

        function swapImages3() {
            var imgCached = new Image();
            imgCached.onload = function() {
                setImageSrc3(imgCached.src);
            };
            imgCached.onerror = function() {
                setImageSrc3("http://a URL/images/ERROR.jpg");
            };
            imgCached.onload = function() {
                setImageSrc3(imgCached.src);
            };
            imgCached.src = null;
            imgCached.src = 'http://A URL/Cloud/LiveXP.ashx?id=' + new Date().getTime() + '&Alias=' + alias;
        }

और यह मेरे एएसएक्स पेज में है:

public class Live : IHttpHandler {
    DAL dal = new DAL();
    static byte[] StandardError = Shared.ERROR;
    public void ProcessRequest(HttpContext context)
    {
        byte[] data = null;
        context.Response.ContentType = "image/jpg";
        try
        {
            if (context.Request.QueryString["Alias"] != null)
            {
                data = Shared.GetFrame(context.Request.QueryString["Alias"].ToString());
                context.Response.BinaryWrite(data);
            }
        }
        catch (Exception ex)
        {
            data = StandardError;
            dal.AddError(ex.ToString());
        }
        finally
        {
            context.Response.BinaryWrite(data);
        }
    }
    public bool IsReusable {
        get {
            return true;
        }
    }   
}

धन्यवाद

0
हाय, आपकी प्रतिक्रिया के लिए धन्यवाद। वैसे यह मेरा सवाल था। मैंने केवल यह माना था कि यह मामला हो सकता है क्योंकि मैं अनुमान लगा रहा हूं कि जब मेरी छवि w3wp प्रक्रिया को लोड करती है और जब छवि को कचरा संग्रह के माध्यम से निपटाया जाता है और एकत्र किया जाता है तो स्मृति वापस आ जाती है। मैं सोच रहा था कि अगर मेरे पास अधिक रैम था तो कचरे के संग्रह की प्रक्रिया तेज हो जाएगी? फिलहाल मेरे वीपीएस मेरे साझा वीपीएस होस्टिंग पैकेज पर 2 जीबी रैम है। जैसा मैंने कहा है यह मेरे लिए बिल्कुल नया है।
जोड़ा लेखक Andrew Simpson, स्रोत
इस बारे में सोचकर कि आपने अभी कहा है कि आप सही हैं (एक और कॉफी की आवश्यकता है :)। ठीक है, राम को बढ़ाना कोई फायदा होगा किसी भी तरह से मैं क्या करने की कोशिश कर रहा हूं? क्या यह छवियों को तेज़ी से लोड कर देगा?
जोड़ा लेखक Andrew Simpson, स्रोत
हाय, आपके विचारों के लिए धन्यवाद। ग्राहक ऐप लक्षित है। लगातार लाइव स्ट्रीम दिखाने का मुद्दा यह है कि आवश्यकता क्या है। मैं सिर्फ यह नहीं कह सकता कि आप इसे प्राप्त नहीं कर सकते हैं। मेरा काम यह करने का सबसे प्रभावी तरीका है। धन्यवाद
जोड़ा लेखक Andrew Simpson, स्रोत
लेकिन लागत के बारे में काफी सही हैं - जब तक हम एक समर्पित सर्वर का उपयोग नहीं करते हैं।
जोड़ा लेखक Andrew Simpson, स्रोत
हाँ, मुझे इसके बारे में पता है। समस्या यह है कि मुझे जेपीजी प्रारूप में क्लाइंट की छवियों की निरंतर स्ट्रीम के साथ आपूर्ति की जाती है। मैंने इन छवियों को ffmpeg (जिसे मैंने क्लाइंट पर हासिल किया) का उपयोग करके ओग फाइलों में स्ट्रीमिंग पर देखा था, लेकिन मुझे रीयल-टाइम एक्सेस की आवश्यकता है और ओग फ़ाइल को इसे चलाने से पहले 'बंद' होना चाहिए। मैंने आपके द्वारा सुझाए गए कार्यों को प्राप्त करने की कोशिश में काफी समय व्यतीत किया है लेकिन इस परिदृश्य में मैं संघर्ष कर रहा हूं :(
जोड़ा लेखक Andrew Simpson, स्रोत
हाय, आपकी टिप्पणियों के लिए फिर से धन्यवाद। मुझे अपाचे के बारे में कुछ नहीं पता है। मैं asp.net doknow। मैंने ffserver के बारे में कुछ समय गुगल किया था लेकिन अभी भी प्रबंधित कोड में इसका उपयोग कर कोई व्यावहारिक उदाहरण नहीं मिल रहा है। खोज जारी है :)
जोड़ा लेखक Andrew Simpson, स्रोत
बस अगर कोई और इस ffserver का पालन कर रहा था विंडोज के लिए उपलब्ध नहीं है ..
जोड़ा लेखक Andrew Simpson, स्रोत
मुझे दोनों के बीच संबंध नहीं दिख रहा है। आप वास्तव में क्यों सोचते हैं कि आपकी रैम बढ़ाने से प्रक्रियाओं में इसका कम उपयोग होगा?
जोड़ा लेखक Havenard, स्रोत
इसके विपरीत, इसमें स्मृति को अक्सर निपटाने के कम कारण होंगे क्योंकि इसमें अधिक रैम उपलब्ध है।
जोड़ा लेखक Havenard, स्रोत
मुझे ऐसा नहीं लगता है, लेकिन एक विराम के बिना एक छवि को लगातार ताज़ा करने की आपकी योजना थोड़ा अधिक लगता है। आप अपने उपयोगकर्ताओं से बहुत सारी बैंडविड्थ का उपभोग करेंगे, उनके लिए बहुत ही असहज हो सकता है कि हर किसी के पास एक सभ्य इंटरनेट कनेक्शन नहीं है, और आपके सर्वर से आपके लिए महंगा क्या हो सकता है, आपके पास शायद मासिक अपलोड सीमा हो। आप सब कुछ कर रहे हैं जो टालना चाहिए।
जोड़ा लेखक Havenard, स्रोत
एक वीडियो का प्रयोग करें। एक अच्छा कोडेक उस डेटा को पुन: उपयोग करने वाले फ़्रेम को अनुकूलित करता है जो क्लाइंट को कम ट्रैफ़िक उत्पन्न करने के लिए पहले से ही होता है। इस कार्य के लिए विशिष्ट सर्वर उपकरण हैं, आप एक लाइव स्ट्रीम भी बना सकते हैं, और ध्वनि शामिल कर सकते हैं। जो कुछ भी करता है, वह पहिया को फिर से शुरू करने का कोई कारण नहीं है।
जोड़ा लेखक Havenard, स्रोत
मुझे पूरा यकीन है कि आप ffmpeg, ffplay और jpegs की नदी के साथ उन जानवरों को खिलाने वाले कुछ मिश्रण कर सकते हैं और लाइव स्ट्रीम के साथ आ सकते हैं। इसके साथ काम करने के लिए एक अपाचे मॉड्यूल भी विशिष्ट है, मुझे यह भी नहीं पता कि यह वास्तव में क्या करता है, मुझे पता है कि यह संभव है। दुर्भाग्यवश मुझे इस मामले में कोई अनुभव नहीं है, लेकिन थोड़ा गुगल करना मुझे यकीन है कि आप कैसे पता लगाएंगे।
जोड़ा लेखक Havenard, स्रोत