वार्निश -> नेग्नेक्स -> अपाचे एक अच्छा विचार है?


10

मैं नए वेबसर्वर के लिए आर्किटेक्चर के बारे में सोच रहा हूं। क्या नार्नेक्स के सामने कैश के रूप में वार्निश एक रिवर्स-प्रॉक्सी के रूप में होगा और सभी भारी उठाने के लिए अपाचे के सामने स्थिर फ़ाइलों की सेवा करना एक अच्छा विचार होगा?

मैं रेल अनुप्रयोगों पर php और माणिक चलाने जा रहा हूँ।

क्या दो अन्य प्रक्रियाओं के माध्यम से एपाचे गुजरने के लिए बहुत अधिक ओवरहेड गुजरना होगा?

आपका बहुत बहुत धन्यवाद!

जवाबों:


8

हाँ, यह मान्य है। मेरा व्यक्तिगत दृष्टिकोण सामने के वार्निश का उपयोग करना और स्थिर एनजीआईएनएक्स अनुरोधों और आपके भारी उठाने के बीच यातायात को विभाजित करने के लिए वीसीएल का उपयोग करना होगा (चाहे वह अपाचे हो या यात्री या ... यह कोई फर्क नहीं पड़ता)। यह विशेष रूप से सच है अगर यह एक ही मशीन पर है क्योंकि आपको अतिरिक्त ओवरहेड की आवश्यकता नहीं है। यह जरूरी नहीं कि आप कुछ भी खरीदें।


हाँ, यह एक बहुत अच्छा विचार है, क्योंकि वार्निश इस के लिए बहुत तेज़ होना चाहिए
ज़ोरान ज़रिक

6

वार्निश गज़िप संपीड़न का समर्थन नहीं करता (अभी तक) करता है, इसलिए यह एक विचार हो सकता है कि इसे वापस nginx के साथ स्वैप करने के लिए चारों ओर स्वैप किया जाए जो वार्निश वापस भेजता है। चूंकि वार्निश और नगीनेक्स समान संसाधनों के लिए नहीं लड़ते हैं (नग्नेक्स जीपीयू संपीड़न के लिए सीपीयू का उपयोग करता है, जबकि वार्निश स्मृति का उपयोग करता है) उन्हें उसी मशीन पर आसानी से चलना चाहिए।

वार्निश अब gzip संपीड़न का समर्थन करता है , इसलिए जब तक आपको SSL समाप्ति की आवश्यकता नहीं होती है (जैसा कि टिप्पणियों में सुझाव दिया गया है), मैं इंटरनेट के साथ सीधे वार्निश लगाने का सुझाव दूंगा।

Http के लिए:

(इंटरनेट) -> (वार्निश, गज़िप, कैशिंग, एसआई) -> (आवेदन)

Https के लिए:

(इंटरनेट) -> (nginx, ssl) -> (वार्निश, गज़िप, कैशिंग, एसआईआई) -> (एप्लिकेशन)

यदि आप वहां भी अपाचे चाहते हैं (सर्वव्यापी mod_foobar समर्थन के लिए), तो मैं इसे वार्निश और एप्लिकेशन के बीच रखूंगा

अद्यतन: अद्यतन वार्निश 3.0 में gzip समर्थन शामिल करने के लिए। टिप्पणियों में सुझाए अनुसार ssl / esi जोड़ा गया


यदि जो कुछ भी वार्निश करने के लिए सामग्री परोस रहा है वह इसे gzip में एन्कोड करता है, तो वार्निश इसे बिना शिकायत के gzipped पर पास करेगा: varnish-cache.org/wiki/FAQ/Compression केवल एक चीज जो वार्निश नहीं करती है, वह सामग्री नहीं लेती है जो अनकैप्ड से असंपीड़ित है आवेदन और यह संकुचित आरक्षित। क्या यह आपकी समझ है?
इवॉक

जब आप ईएसआई का उपयोग कर रहे होते हैं तब वार्निश के सामने नग्नेक्स चलाने का एकमात्र समय होता है। चूंकि आप संपीड़ित पृष्ठों से ईएसआई असेंबली नहीं कर सकते हैं, और वार्निश एक इकट्ठे पृष्ठ को संपीड़ित नहीं करेगा, इसलिए कि संपीड़न प्रदान करने के लिए Nginx को वार्निश के सामने रखा गया है। यदि मूल सामग्री संपीड़ित करता है, तो वार्निश ग्राहक को उस डेटा को संपीड़ित रूप में पास करेगा।
user6738237482

हाँ, ईएसआई एक कारण है कि मैं इस विन्यास की सिफारिश क्यों करूंगा, लेकिन मुझे लगता है कि यदि आपका बैकएंड कंप्रेस करता है और आप ईएसआई का उपयोग नहीं करते हैं, तो आप नगीनक्स से दूर कर सकते हैं, क्योंकि मेरा मानना ​​है कि वार्निश बिना ट्रैफिक के बहुत अधिक संभाल सकता है। बिना मेहनत के।
मोगसी

@ user6738237482, nginx suport SSL समाप्ति, वार्निश नहीं करता है। वास्तव में, वार्निश या अपाचे जैसी किसी चीज़ के सामने होना वास्तव में वही है जो मूल रूप से एक तेज, हल्के प्रॉक्सी सर्वर के लिए बनाया गया था।
ralayter

4

ओवरहेड की मात्रा महत्वपूर्ण नहीं होनी चाहिए। मैं इस कारण का हिस्सा मान रहा हूं कि आप इन दो स्तरों को स्केलेबिलिटी के लिए चाहते हैं; जिस स्थिति में आप सबसे अधिक संभावना देखते हैं, अपाचे के सापेक्ष, वह वार्निश और नग्नेक्स बहुत कठिन काम नहीं कर रहे हैं।

यदि आप एक मशीन पर सभी तीन स्तरों को देखते हैं, तो सर्वर की क्षमता तक पहुंचने से पहले एक प्रदर्शन प्रभाव कम होना चाहिए।

एक विकल्प के रूप में, यात्री के साथ वार्निश + नेनेक्स क्यों नहीं? मैंने इस सेटअप का उपयोग अतीत में किया है और यात्री का उपयोग करके nginx अपेक्षाकृत हल्का है, और बहुत अच्छी तरह से भाग गया। यदि आप अपने रेल स्टैक चलाने वाले अपाचे से शादी नहीं करते हैं, तो इस बारे में सोचने लायक हो सकता है।


हाँ, मैं रेल के लिए अपाचे से नग्नेक्स पर स्विच कर सकता हूं, लेकिन ग्राहकों को उपयोग करने की क्षमता दे रहा हूं। कम से कम php के लिए .acaccess फाइलें एपाचे के लिए + है।
ज़ोरान ज़रिक

2

मैं स्टार्टअप ईकॉमर्स प्लेटफॉर्म के लिए sys एडमिन हूं। हम अपने PHP / Apache स्टैक के सामने वार्निश + nginx का उपयोग करते हैं और इसने अद्भुत काम किया है।

हमारे पास एक उच्च मेमोरी उपयोग अनुप्रयोग है और ऐप प्रति वेबनोड पर लगभग 15-20 ग्राम रैम का उपयोग कर रहा था और एक बार जब हम वार्निश को सामने रखते हैं तो यह अब लगभग 8 ग्राम रैम प्रति नोड है। उन्होंने कभी नुकीला नहीं किया।

इसलिए मैं इसकी अत्यधिक अनुशंसा करता हूं।


3
तुम्हें पता है वार्निश ssl सही बात नहीं करता है?
माइक

1

मैं Apache + PHP + MySQL सर्वर पर बूस्ट मॉड्यूल के साथ Drupal चला रहा हूं, लेकिन उनके सामने मैं Nginx को gzip-static सुविधा के साथ उपयोग कर रहा हूं, और उपयोगकर्ताओं को सेवा देने के लिए बढ़ावा देने के परिणामों का उपयोग कर रहा हूं।

और उन सभी के शीर्ष पर मैं वार्निश का उपयोग कर रहा हूं, सभी एक ही पीसी पर, मुझे अच्छे परिणाम मिल रहे हैं।

मैं हेडर को ट्विन करने के लिए Nginx का उपयोग कर रहा हूं कि Drupal कैश के लिए बहुत अच्छा नहीं करता है।


0

यह एक अच्छा विचार नहीं है जब तक कि आपको ईएसआई जैसी किसी चीज की आवश्यकता न हो। Nginx की अपनी कैशिंग प्रणाली है जो बेहतर प्रदर्शन करती है


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

@MartijnHeemels web.archive.org/web/20130501222206/http://todsul.com/… और एक और बेंचमार्क है: nbonvin.wordpress.com/2011/03/24/…
VBB

-1

अपाचे का उपयोग एसएसएल टर्मिनेट (डिक्रिप्ट) करने के लिए किया जा सकता है, http://noosfero.org/Development/Var##LL की जाँच करें


1
, जवाब के रूप में लिंक पोस्ट करने के रूप में अपने जवाब सभी अर्थ खोने के लिए जब यह द्वारा प्रभावित होता है से बचें जो संभवत कृपया linkrot । कृपया अपने उत्तर को संपादित करने और अपने उत्तर में आपके द्वारा दिए गए लिंक से संबंधित भागों सहित विचार करें। हर तरह से संदर्भ के रूप में लिंक को जगह पर छोड़ दें।
22
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.