NGINX कॉन्फ़िगरेशन रिवाइंड: सर्वरियन ने प्रॉक्सी कैश ट्यूनिंग की खोई हुई कला को पुनर्जीवित किया
क्या आप तेज़ वेबसाइट और कम सर्वर लोड चाहते हैं? NGINX प्रॉक्सी कैशिंग आपका समाधान है। बार-बार अनुरोधित सामग्री को संग्रहीत करके, यह डिलीवरी को गति देता है और आपके मूल सर्वर पर तनाव को कम करता है। Serverion बेहतर प्रदर्शन और विश्वसनीयता के लिए आपके कैश सेटअप को अनुकूलित करने के लिए व्यावहारिक सुझाव साझा करता है।
चाबी छीनना:
- बासी सामग्री परोसें: सर्वर डाउनटाइम के दौरान कैश्ड प्रतिक्रियाओं का उपयोग करें
proxy_cache_use_stale. - पृष्ठभूमि अद्यतन: उपयोगकर्ताओं को परेशान किए बिना कैश प्रविष्टियों को ताज़ा करें
प्रॉक्सी_कैश_बैकग्राउंड_अपडेट. - ओवरलोड को रोकें: अपने मूल सर्वर को अत्यधिक व्यस्त होने से बचाएं
प्रॉक्सी_कैश_लॉक.
उदाहरण सेटअप:
proxy_cache_path /var/cache/nginx स्तर=1:2 keys_zone=my_cache:10m max_size=10g निष्क्रिय=60m use_temp_path=off; proxy_cache my_cache; proxy_cache_use_stale अद्यतन कर रहा है; proxy_cache_background_update चालू; proxy_cache_lock चालू; ये सेटिंग्स तेज़ प्रतिक्रिया, कुशल संसाधन उपयोग और विश्वसनीय सामग्री वितरण सुनिश्चित करती हैं। चाहे आप कोई भी चला रहे हों छोटे वीपीएस या उच्च-ट्रैफ़िक सर्वर, ये तकनीकें आपको NGINX प्रॉक्सी कैशिंग से अधिकतम लाभ प्राप्त करने में मदद कर सकती हैं।
NGINX: रिवर्स प्रॉक्सी के साथ कंटेंट कैशिंग (सुपर फास्ट…

NGINX प्रॉक्सी कैशिंग मूल बातें
सर्वरियन की कैश-ट्यूनिंग तकनीक NGINX प्रॉक्सी कैशिंग के मूल सिद्धांतों पर निर्भर करती है, जिसमें मूल सामग्री की प्रतियों को संग्रहीत करना और प्रस्तुत करना शामिल है। सिस्टम तीन मुख्य घटकों का उपयोग करता है: कैश पथ, एक साझा मेमोरी ज़ोन, और एक कैश प्रबंधक जो कैश की सीमा तक पहुँचने पर समाप्त हो चुकी या कम-हाल ही में उपयोग की गई (LRU) फ़ाइलों को हटा देता है।
NGINX प्रॉक्सी कैश ऑपरेशन
जब NGINX किसी अनुरोध को संसाधित करता है, तो यह सबसे पहले अपने साझा मेमोरी ज़ोन की जाँच करता है कि अनुरोधित सामग्री पहले से ही कैश की गई है या नहीं। यह इन-मेमोरी लुकअप कैश हिट या मिस का त्वरित निर्धारण करने की अनुमति देता है। संदर्भ के लिए, 1 एमबी कीज़ ज़ोन लगभग 8,000 कैश कुंजियाँ संग्रहीत कर सकता है[1]।
कैशिंग प्रक्रिया इस प्रकार काम करती है:
- NGINX एक अद्वितीय कैश कुंजी बनाने के लिए अनुरोध को हैश करता है।
- यह उस कुंजी के लिए साझा मेमोरी क्षेत्र की जांच करता है।
- यदि कुंजी मिल जाती है (कैश हिट), तो सामग्री सीधे कैश से प्रदान की जाती है।
- यदि कुंजी नहीं मिलती (कैश मिस), तो सामग्री मूल सर्वर से प्राप्त की जाती है और भविष्य में उपयोग के लिए कैश में संग्रहीत कर दी जाती है।
सर्वरियन कुशल कुंजी लुकअप सुनिश्चित करके और निर्देशिका पदानुक्रम का उपयोग करके कैश भंडारण को व्यवस्थित करके प्रदर्शन को अनुकूलित करता है।
कोर कैश तत्व
| आदेश | उद्देश्य | प्रभाव |
|---|---|---|
प्रॉक्सी_कैश_पथ | कैश संग्रहण स्थान निर्दिष्ट करता है | यह निर्धारित करता है कि सामग्री कहाँ और कैसे कैश की जाएगी |
प्रॉक्सी_कैश | विशिष्ट अनुरोधों के लिए कैशिंग सक्रिय करता है | किसी स्थान ब्लॉक के भीतर कैशिंग सक्षम करता है |
कुंजियाँ_क्षेत्र | कैश कुंजियों के लिए साझा मेमोरी आवंटित करता है | तेज़ इन-मेमोरी लुकअप की अनुमति देता है |
निष्क्रिय | यह निर्धारित करता है कि अप्रयुक्त आइटम कैश में कितने समय तक रहेंगे | कैश की ताजगी और निष्कासन समय को नियंत्रित करता है |
प्रदर्शन को अधिकतम करने के लिए, दो-स्तरीय का उपयोग करें स्तरों फ़ाइल सिस्टम धीमा होने से बचाने के लिए पदानुक्रम सेट करें। इसके अतिरिक्त, सेट करें use_temp_path=बंद कैश्ड फ़ाइलों को सीधे उनके अंतिम स्थान पर लिखने से I/O ओवरहेड कम हो जाता है।
NGINX मूल सर्वर से कैश निर्देशों का सम्मान करता है। यह केवल उन प्रतिक्रियाओं को संग्रहीत करता है जिनमें शामिल हैं समय-सीमा समाप्त भविष्य की तारीख या कैश-नियंत्रण हेडर के साथ अधिकतम उम्र शून्य से अधिक मान.
अब आप इन सिद्धांतों को अपने NGINX प्रॉक्सी कैश सेटअप में लागू कर सकते हैं।
[1] एनजीआईएनएक्स दस्तावेज़ीकरण: 1 एमबी कुंजी ज़ोन लगभग 8,000 कुंजियों के लिए डेटा संग्रहीत करता है।
NGINX प्रॉक्सी कैश सेटअप गाइड
NGINX प्रॉक्सी कैशिंग को चरण दर चरण कॉन्फ़िगर और अनुकूलित करना सीखें।
कैश पैरामीटर सेटिंग्स
NGINX प्रॉक्सी कैश सेटअप का आधार है प्रॉक्सी_कैश_पथ निर्देश। यहाँ एक उदाहरण विन्यास है:
proxy_cache_path /var/cache/nginx स्तर=1:2 keys_zone=my_cache:10m max_size=10g निष्क्रिय=60m use_temp_path=बंद; यह कॉन्फ़िगरेशन एक दो-स्तरीय निर्देशिका संरचना बनाता है, और इसके लिए 10 MB आवंटित करता है। कुंजियाँ_क्षेत्र (लगभग 80,000 कुंजियों के लिए पर्याप्त), 10 जीबी का अधिकतम कैश आकार निर्धारित करता है, तथा 60 मिनट का निष्क्रिय टाइमआउट परिभाषित करता है।
बेहतर नियंत्रण के लिए आप ये वैकल्पिक निर्देश भी शामिल कर सकते हैं:
| आदेश | उद्देश्य |
|---|---|
proxy_cache_use_stale | यदि मूल सर्वर अनुपलब्ध हों तो पुरानी सामग्री परोसता है |
proxy_cache_पुनर्वैधीकरण | यह जाँचने के लिए कि क्या सामग्री अभी भी वैध है, सशर्त GET अनुरोधों का उपयोग करता है |
प्रॉक्सी_कैश_बैकग्राउंड_अपडेट | पृष्ठभूमि में पुरानी सामग्री को ताज़ा करता है |
प्रॉक्सी_कैश_लॉक | मूल सर्वर पर एकाधिक अनुरोधों को आने से रोकता है |
इन मापदंडों को परिभाषित करने के बाद, अपने अपेक्षित ट्रैफ़िक के आधार पर मेमोरी और डिस्क स्थान आवंटित करें।
कैश आकार प्रबंधन
अपने कैश का आकार प्रभावी ढंग से निर्धारित करने के लिए, मेमोरी और डिस्क उपयोग दोनों पर विचार करें। यहाँ बताया गया है कि कैसे:
- मेमोरी ज़ोन का आकार निर्धारण के लिए मेमोरी आवंटित करें
कुंजियाँ_क्षेत्रआपकी कैशिंग आवश्यकताओं से मेल खाने के लिए:keys_zone=enterprise_cache:100m; # लगभग 800,000 कैश कुंजियों का समर्थन करता है - डिस्क स्थान आवंटन समायोजित
प्रॉक्सी_कैश_पथअधिकतम डिस्क स्थान निर्दिष्ट करने के लिए:proxy_cache_path /var/cache/nginx स्तर=1:2 keys_zone=enterprise_cache:100m max_size=10g निष्क्रिय=24h use_temp_path=बंद;
एक बार ये पैरामीटर सेट हो जाने के बाद, आप अपने कैश को आरंभीकृत और सक्षम करने के लिए तैयार हैं।
कैश आरंभीकरण
अपने पैरामीटर और आकार को ठीक करने के बाद, कैशिंग को सक्रिय करने के लिए इन चरणों का पालन करें:
- उपयोग
प्रॉक्सी_कैश_पथउपरोक्त उदाहरण से निर्देश लें और जोड़ेंप्रॉक्सी_कैश my_cacheआपके कॉन्फ़िगरेशन के लिए. - प्रासंगिक के भीतर कैशिंग सक्षम करें
सर्वरयास्थानअवरोध पैदा करना:प्रॉक्सी_कैश माय_कैश; - वैकल्पिक रूप से, प्रदर्शन को बढ़ाने के लिए पहले बताए गए किसी भी फ़ाइन-ट्यूनिंग निर्देश को शामिल करें।
- कस्टम हेडर जोड़कर कैश स्थिति की निगरानी करें:
add_header X-कैश-स्थिति $upstream_cache_status;
टिप्पणी: एनजीआईएनएक्स दस्तावेज़ के अनुसार, 1 एमबी
कुंजियाँ_क्षेत्रलगभग 8,000 कुंजियाँ संग्रहीत कर सकता है।
यह सेटअप सुनिश्चित करता है कि आपका कैश समायोजन के लिए लचीलापन बनाए रखते हुए, ट्रैफ़िक को कुशलतापूर्वक संभालने के लिए तैयार है।
एसबीबी-आईटीबी-59e1987
एंटरप्राइज़ NGINX कैश प्रबंधन
एक बार जब आपका कैश पथ और पैरामीटर सेट हो जाता है, तो एंटरप्राइज़-स्तरीय ट्रैफ़िक को प्रभावी ढंग से संभालने के लिए अपने सेटअप को स्केल करने का समय आ जाता है।
कैश हिट दर अनुकूलन
कैश दक्षता में सुधार करने के लिए, सशर्त अनुरोध और पृष्ठभूमि अपडेट जैसी सुविधाएँ सक्षम करें:
proxy_cache_revalidate चालू; proxy_cache_background_update चालू; proxy_cache_use_stale अद्यतन कर रहा है; इन सेटिंग्स को कॉन्फ़िगर करके अपने मूल सर्वर पर अत्यधिक भार पड़ने से बचें:
proxy_cache_lock चालू; proxy_cache_lock_timeout 5s; proxy_cache_min_uses 2; उच्च-ट्रैफ़िक वातावरण के लिए, प्रदर्शन को बढ़ाने के लिए कैश लोड को एकाधिक संग्रहण डिवाइसों में वितरित करें:
split_clients "${request_uri}" $disk { 20% "/data/cache1"; 20% "/data/cache2"; 20% "/data/cache3"; 20% "/data/cache4"; * "/data/cache5"; } एक बार जब आपका कैश प्रदर्शन के लिए अनुकूलित हो जाए, तो संवेदनशील सामग्री को संभालने के लिए इसे सुरक्षित करने पर ध्यान केंद्रित करें।
कैश सुरक्षा नियंत्रण
संवेदनशील अनुरोधों की सुरक्षा के लिए, कैशिंग को बायपास करें और आवश्यकतानुसार कैश कुंजियों को अनुकूलित करें:
proxy_cache_bypass $http_pragma; proxy_cache_bypass $cookie_nocache; proxy_ignore_headers कैश-नियंत्रण; वैयक्तिकृत सामग्री या कुकी-आधारित अनुरोधों के लिए, कैश कुंजी और समर्थित विधियों को समायोजित करें:
proxy_cache_key "$host$request_uri$cookie_user"; proxy_cache_methods HEAD POST प्राप्त करें; अपने कैश को सुरक्षित करने के बाद, सुनिश्चित करें कि आप लगातार उसके प्रदर्शन की निगरानी कर रहे हैं।
कैश प्रदर्शन ट्रैकिंग
अपने सेटअप को बेहतर बनाने के लिए स्थिति परिभाषाओं का उपयोग करके कैश व्यवहार की निगरानी करें:
| स्थिति | परिभाषा |
|---|---|
| अद्यतन करने | अपडेट जारी रहने के दौरान पुरानी सामग्री प्रदर्शित की जाती है |
| दोबारा सत्यापित | कैश की गई सामग्री को मूल सर्वर के साथ पुनः सत्यापित किया गया |
विश्लेषण करें X-कैश-स्थिति इष्टतम परिणामों के लिए नियमित रूप से मीट्रिक्स की जांच करें और ट्रैफ़िक पैटर्न के साथ संरेखित करने के लिए निर्देशों को समायोजित करें।
Serverion's NGINX कैश कॉन्फ़िगरेशन

सर्वरियन प्रत्येक कार्यभार की विशिष्ट आवश्यकताओं के आधार पर NGINX कैश सेटिंग्स को अनुकूलित करता है। कोर निर्देशों का उपयोग करके, वे VPS और के लिए कैश कॉन्फ़िगरेशन को अलग-अलग तरीके से अनुकूलित करते हैं समर्पित सर्वर.
कार्यभार के अनुसार कैश पथ
वीपीएस वर्कलोड
VPS सेटअप के लिए, यह कॉन्फ़िगरेशन मेमोरी दक्षता और तेज़ प्रतिक्रिया समय के बीच संतुलन बनाता है:
proxy_cache_path /data/nginx/cache स्तर=1:2 keys_zone=SERVERCACHE:10m max_size=10g निष्क्रिय=60m use_temp_path=off; proxy_cache_key "$scheme$request_method$host$request_uri"; proxy_cache_valid 200 302 60m; proxy_cache_valid 404 1m; The कुंजियाँ_क्षेत्र इसका आकार लगभग 80,000 कुंजियों को समायोजित करने के लिए निर्धारित किया गया है।
समर्पित सर्वर
समर्पित सर्वरों पर उच्च-ट्रैफ़िक अनुप्रयोगों के लिए, सर्वरियन कई SSDs में वितरित कैशिंग प्रणाली का उपयोग करता है:
proxy_cache_path /cache1 स्तर=1:2 keys_zone=cache1:10m; proxy_cache_path /cache2 स्तर=1:2 keys_zone=cache2:10m; proxy_cache_path /cache3 स्तर=1:2 keys_zone=cache3:10m; split_clients "${request_uri}" $cachezone { 33% "cache1"; 33% "cache2"; * "cache3"; } यह सेटअप कैश लेखन को तीन SSDs में समान रूप से वितरित करता है विभाजित_ग्राहक निर्देश.
इन कॉन्फ़िगरेशन के लिए विशिष्ट मान सर्वरियन के कैश पैरामीटर संदर्भ तालिका से प्राप्त किए गए हैं।
बुनियादी ढांचे की सेटिंग
प्रदर्शन को और बेहतर बनाने के लिए, कैश इनपुट और आउटपुट को कुशलतापूर्वक संभालने के लिए NGINX कार्यकर्ता सेटिंग्स को समायोजित किया जाता है:
कार्यकर्ता_प्रक्रियाएँ स्वचालित; कार्यकर्ता_कनेक्शन 1024; कार्यकर्ता_सीपीयू_एफ़िनिटी 0-3; # कार्यकर्ताओं को CPU कोर के साथ संरेखित करें ये समायोजन यह सुनिश्चित करते हैं कि कैश्ड प्रतिक्रियाएं अधिकतम दक्षता के साथ वितरित की जाएं।
सारांश: NGINX कैश ट्यूनिंग परिणाम
सर्वरियन ने अपने संपूर्ण नेटवर्क में प्रदर्शन और विश्वसनीयता में सुधार किया है। होस्टिंग सिस्टम विस्तृत प्रॉक्सी कैश समायोजन के माध्यम से। कैश पदानुक्रम को परिष्कृत करके, ताज़गी सेटिंग प्रबंधित करके, और हेडर प्रोसेसिंग को अनुकूलित करके, उन्होंने निर्बाध सामग्री वितरण बनाए रखा। वास्तविक समय X-प्रॉक्सी-कैश मेट्रिक्स ने आईटी टीमों को कैश सेटिंग्स को प्रभावी ढंग से समायोजित करने में सक्षम बनाया, जिससे प्रतिक्रिया समय में तेजी आई, मूल सर्वर पर कम दबाव पड़ा और उद्यम परिचालनों के लिए बेहतर उपलब्धता हुई।