वर्चुअलबॉक्स में उबंटू - स्थानीय आईपी पते का उपयोग करते समय WEBrick वेब सर्वर बहुत धीमा


7

रूबी ऑन रेल्स सीखने के लिए मैं उबंटू (ल्यूसिड लिंक्स) का उपयोग कर रहा हूं। मैं वर्चुअलबॉक्स में Ubuntu चला रहा हूं (होस्ट विंडोज 7 अल्टीमेट है), ब्रिजिंग नेटवर्किंग का उपयोग कर रहा हूं।

जब मैं अपना रेल एप्लिकेशन चलाता हूं और स्थानीय होस्ट का उपयोग करके उस पर ब्राउज़र को इंगित करता हूं: 3000, एप्लिकेशन तुरंत प्रतिक्रिया देता है और मेरा पृष्ठ एक या दो सेकंड में प्रस्तुत किया जाता है।

हालाँकि, अगर मैं 10.0.0.5:3000 का उपयोग करता हूं (जहां 10.0.0.5 मेरे आईपी पते का उपयोग करके सूचना दी गई है ifconfig), मेरे रेल एप्लिकेशन की प्रतिक्रिया अविश्वसनीय रूप से धीमी है - शायद सर्वर को जवाब देने और पृष्ठ को प्रस्तुत करने के लिए 30 सेकंड या अधिक।

यह फ़ायरफ़ॉक्स और क्रोम दोनों में होता है। इसके अलावा, जब मैं होस्ट से रेल एप्लिकेशन को हिट करता हूं (आईई में इसे जांचने के लिए), तो मुझे एक ही स्लोवूओ का जवाब मिलता है।

किसी भी विचार क्या हो सकता है? मैंने इसे दो अलग-अलग राउटरों के साथ और दो अलग-अलग नेटवर्क (काम और घर) पर एक ही परिणाम के साथ आज़माया है।

सभी को खुश करते हैं।


1
क्या वर्चुअल उबंटू बॉक्स के अन्य कनेक्शन भी बहुत धीमे हैं? उबंटू वीएम से विंडोज होस्ट में दूसरे तरीके से कनेक्ट करने के बारे में कैसे?
कार्लफ़

मैं विंडोज होस्ट से उबंटू अतिथि को पिंग कर सकता हूं, और पिंग उत्तर तत्काल हैं। इसके अलावा, उबंटू अतिथि से विंडोज होस्ट (जैसे विंडोज पर एक आईआईएस वेबसाइट) के कनेक्शन तेज हैं। एकमात्र सुस्ती तब होती है जब मैं आईपी पते का उपयोग करके उबंटू रेल सर्वर को मारता हूं। उपयोग करना localhostठीक है।
लेनी मरहम सेप

मुझे वही समस्या हो रही है, लेकिन कोई बात नहीं अगर मैं 'लोकलहोस्ट' या संख्यात्मक आईपी का उपयोग करता हूं, तो प्रतिक्रियाएं बहुत धीमी हैं। प्रत्येक संसाधन को लोड करने में कुछ सेकंड लगते हैं (एक छवि, एक js, जो भी हो)। मैं mongrel की कोशिश की है, पतली, गेंडा ... मुझे लगता है कि एकमात्र उपाय apache के तहत यात्री का उपयोग करने के लिए सही है?
एम्पेरो

रिवर्स डीएनएस लुकअप से संबंधित हो सकता है।
आर्टिस्टेक्स

यह लेख एक उत्तर प्रदान कर सकता है: stackoverflow.com/questions/1156759/…
एटिएन

जवाबों:


8

दौड़ने की कोशिश करो

sudo service avahi-daemon stop

WEBrick /usr/lib/ruby//webrick/config.rb को भी सेट करने का प्रयास करें

:DoNotReverseLookup => true

इसे भी देखें: "Stackoverflow WEBrick रिमोट डेस्कटॉप से ​​धीमा"


+1 अवही को रोकने का तत्काल प्रभाव पड़ा। क्या आप इस बारे में स्पष्टीकरण प्रदान कर सकते हैं?
अमरो

@ अमरो, यकीन नहीं होता। http://mercenary-code.blogspot.co.uk ने सुझाव दिया कि और सिमिट को /etc/rc3.d से हटाने का उल्लेख करता है इसलिए यह पुनः आरंभ नहीं करता है। इस लाइटहाउस टिकट में 127.0.0.255 के उलटफेर का समाधान करने की कोशिश करने वाली अवाही का उल्लेख किया गया है। http://qzdrproject.wordpress.com ने समाधान खोजने के लिए स्ट्रेस / वायरशर्क में खुदाई की।
जेम्स ईजे

यह मेरे लिए काम किया, यह एक रिवर्स लुकअप के कारण होता है जो अंततः बाहर निकलता है।
एड बिशप

1

जब आप अन्य वेब सर्वर का उपयोग करते हैं तो यह WEBrick समस्या है, कोई समस्या नहीं है।

मैंने रेलिंग 3.0.x पर रूबी के साथ मोंगरेल और थिन की कोशिश की, दोनों शानदार काम कर रहे थे।

मैं Mongrel का उपयोग करने का सुझाव देता हूं - बस इसे अपने जेमफाइल में जोड़ें:

gem "mongrel"

या आप इसे केवल विकास और परीक्षण के लिए निर्धारित कर सकते हैं, उत्पादन को तोड़ने के लिए नहीं:

group :test, :development do
  gem "mongrel"
end

अब सर्वर को उसी तरह से शुरू करें जैसा आपने पहले किया था और WEBrick के बजाय Mongrel शुरू होता है।

यदि आप थिन पसंद करते हैं, तो आपको सर्वर शुरू thin startकरना होगा या WEBrick शुरू किया जाएगा।


0

मुझे VirtualBox और VMware दोनों के तहत यही समस्या हुई है। निश्चित नहीं है कि समस्या क्या है ... यह कार्य करता है जैसे रेल सर्वर कुछ ऐसा देख रहा है जिसे समयबद्ध करना है? रेल सर्वर लॉग में तेजी से रेंडर बार रिपोर्ट करता है, लेकिन प्रत्येक अनुरोध का जवाब देने के लिए हमेशा के लिए लेता है। एक विशेष उबंटू उदाहरण पर मेरे लिए रेल 2.3.3 और रेल 3.0.3 दोनों में होता है (वर्चुअलबॉक्स और वीएमवेयर दोनों के तहत)। मेरे पास एक और बॉक्स पर एक और Ubuntu VM है जो समस्या नहीं थी ...

कुछ समय के लिए निराशा का पीछा करने के बाद, मेरा समाधान विकास मोड और अपाचे में फ़्यूज़न पैसेंजर का उपयोग करना है।


0

चेतावनी: यह एक गैर-उत्तर है (केवल यात्री का उपयोग करने के लिए सुझाव के अलावा), लेकिन मैं अपने स्वयं के अनुभव के साथ-साथ कुछ प्रयोगों का भी दस्तावेजीकरण कर रहा हूं जो मैंने किया था कि उम्मीद है कि हमें निष्कर्ष के करीब आने में मदद मिलेगी।

मेरा ठीक यही मुद्दा है। यह अचानक सामने आया। पिंग के मोर्चे पर भी मेरा आपके साथ ऐसा ही निरीक्षण है। मेरे उबंटू अतिथि भी एक नियमित LAMP स्टैक चलाते हैं, और वहाँ बिल्कुल कोई सेवा समस्या नहीं है। क्या यह लायक है, ऐसा लगता unix_stream_data_waitहै कि हैंगअप के लिए दोष देने के लिए (ज्यादातर?) है। मैं वास्तव में यह नहीं बता सकता कि तुच्छ से परे इसका क्या अर्थ है या आगे कैसे जांच की जाए।

यह पोर्ट नंबर से स्वतंत्र प्रतीत होता है (एक निचले पोर्ट पर रेल चलती है क्योंकि rails s -p 30यह समस्या को नहीं बदलता है, और पोर्ट 3000 को सुनने के लिए सेट की गई अन्य सेवाएँ समान सेवा समस्याओं का सामना नहीं करती हैं)।

यह एप्लिकेशन कोड से स्वतंत्र भी लगता है। मैंने इसे एक नंगे रेल ऐप के साथ आज़माया, और देरी फिर से शुरू हुई।

देरी भी अवधि में भिन्न होती है, परिकल्पना के साथ एक संभावित समस्या को उठाते हुए कि रेल मुख्य रूप से बाहर निकल रही है।

एक ही "बैच" में भेजे गए अनुरोध एक ही समय में पूरे होते प्रतीत होते हैं। इससे पता चलता है कि रेल प्रक्रिया और नेटवर्क हैंडलर के बीच इंटरफेस में कुछ है, जहां इंटरफ़ेस धीमा धीमा है, लेकिन जब लेन-देन अंत में गुजरता है तो अपनी प्लेट को साफ करता है।

कुल मिलाकर, अजीब अजीब।

मैं सिर्फ पैसेंजर के साथ गया था ।


0

यह वास्तव में अजीब है। मुझे पता चला है, कि अगर मैं पोटीन रिस्पॉन्स से रेल सर्वर शुरू करता हूं तो बहुत तेजी से होता है, अगर मैं इसे वर्चुअलबॉक्स विंडो से शुरू करता हूं ...


0

यदि आप WEBrick का उपयोग कर रहे हैं, तो आप इसके बजाय थिन का उपयोग करने का प्रयास कर सकते हैं। अपने Gemfile में पतले जोड़ें:

gem 'thin'

और इसे चलाकर स्थापित करें:

bundle

सर्वर को चालू करके चलाएं:

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