मैं आंतरिक रूप से अपने स्वयं के उपयोग के लिए एक webservice की योजना बना रहा हूं जो एक तर्क, एक यूआरएल लेता है, और का प्रतिनिधित्व करने वाले एचटीएमएल को उस URL से हल किया गया है। हल करके मेरा मतलब है कि webservice पहले उस यूआरएल पर पेज प्राप्त करेगा, फिर पृष्ठ को 'रेंडर' करने के लिए फ़ैंटॉमजेएस का उपयोग करें, और उसके बाद परिणामी स्रोत को सभी डीएचटीएम के बाद वापस करें, AJAX कॉल इत्यादि निष्पादित किए जाते हैं। हालांकि प्रति अनुरोध आधार पर प्रेत लॉन्च करना (जो अब मैं कर रहा हूं) रास्ता बहुत सुस्त है। मेरे पास फ़ैंटॉमजेएस उदाहरणों का एक पूल होगा जो हमेशा मेरे webservice को नवीनतम कॉल करने के लिए उपलब्ध है।फ़ैंटॉमजेएस उदाहरणों के 'पूल' का प्रबंधन कैसे करें
क्या इस तरह की कोई चीज़ पहले से की गई है? मैं स्क्रैच से अपने लिए पूल मैनेजर/http प्रॉक्सी सर्वर लिखने के बजाय दूसरों के काम पर इस webservice का आधार बनाना चाहता हूं।
अधिक संदर्भ: मैंने 2 समान परियोजनाएं सूचीबद्ध की हैं जिन्हें मैंने अभी तक देखा है और मैंने प्रत्येक से क्यों बचा है, जिसके परिणामस्वरूप फ़ैंटॉमजेएस उदाहरणों के पूल के प्रबंधन के बारे में यह प्रश्न है।
jsdom - मैंने जो देखा है उससे पृष्ठ पर स्क्रिप्ट निष्पादित करने के लिए बहुत अच्छी कार्यक्षमता है, लेकिन यह ब्राउज़र व्यवहार को दोहराने का प्रयास नहीं करता है, इसलिए यदि मैं इसे सामान्य उद्देश्य "डीओएम रिज़ॉल्वर" के रूप में उपयोग करता हूं, डी सभी प्रकार के किनारों के मामलों, घटना कॉलिंग इत्यादि को संभालने के लिए बहुत अधिक कोडिंग होने का अंत होता है। मैंने देखा कि पहला उदाहरण मैन्युअल रूप से नोड का उपयोग करके स्थापित एक परीक्षण ऐप के लिए बॉडी टैग के ऑनलोड() फ़ंक्शन को कॉल करना था । यह एक गहरे खरगोश छेद की शुरुआत की तरह लग रहा था।
सेलेनियम - इसमें अभी बहुत अधिक चलने वाले हिस्सों हैं, इसलिए लंबे समय तक रहने वाले ब्राउज़र उदाहरणों को प्रबंधित करने के लिए पूल स्थापित करना फ़ैंटॉमजेएस का उपयोग करने से अधिक जटिल होगा। मुझे इसकी किसी भी मैक्रो रिकॉर्डिंग/स्क्रिप्टिंग लाभ की आवश्यकता नहीं है। मैं बस में
आप कैसे कतार काम करता है जानते हैं विस्तार से? मुझे लगता है कि यह कतार में कई एक्सएचआर अनुरोधों को बुला रहा है?मैं एक ऐसे समाधान की तलाश में हूं जो वास्तव में फ़ैंटोमोज़ प्रक्रियाओं को एक डिमन के रूप में चलने के बजाए एक डिमन के रूप में चल रहा है। – CMCDragonkai
@CMCDragonkai प्रश्न में उल्लेख किया गया है कि "फैंटॉमजेएस उदाहरणों का एक पूल हमेशा सेवा के लिए उपलब्ध है मेरे webservice के लिए नवीनतम कॉल, "जो लगातार PhantomJS daemons चल रहा है, लेकिन यह जवाब किसी भी मामले के साथ काम करेगा। सभी 'async.queue' फ़ंक्शन यह सुनिश्चित करता है कि किसी भी समय फ़ंक्शन में कॉल की निश्चित संख्या से अधिक बकाया नहीं है; आप उस समारोह के अंदर क्या करते हैं आप पर निर्भर है। –
आप मेरे दोस्त, लगभग 4 साल बाद, मुझे काफी सिरदर्द बचा लिया है। – mgmcdermott