हम 1 वेबसर्वर सेटअप से दो वेबसर्वर सेटअप पर जा रहे हैं और मुझे दो लोड संतुलित मशीनों के बीच PHP सत्र साझा करना शुरू करना है। हमने पहले से ही स्थापित ( और शुरू किया ) मेमस्कैलेट किया है और इसलिए मुझे सुखद आश्चर्य हुआ कि मैं फ़ाइल में केवल 3 पंक्तियों को बदलकर नए सत्र के बीच साझाकरण सत्र को पूरा कर सकता हूं ( session.save_handler और session.save_path :php.ini
मैंने प्रतिस्थापित किया:
session.save_handler = files
साथ में:
session.save_handler = memcache
फिर मास्टर वेबसर्वर पर मैंने session.save_path
लोकलहोस्ट को इंगित करने के लिए सेट किया :
session.save_path="tcp://localhost:11211"
और गुलाम वेबसर्वर पर मैंने session.save_path
मास्टर को इंगित करने के लिए सेट किया :
session.save_path="tcp://192.168.0.1:11211"
नौकरी की, मैंने इसका परीक्षण किया और यह काम करता है। परंतु...
स्पष्ट रूप से मेमेचे का उपयोग करने का अर्थ है कि सत्र रैम में हैं और खो जाएगा यदि एक मशीन को रिबूट किया जाता है या मेकमैच डेमॉन क्रैश होता है - मैं इससे थोड़ा चिंतित हूं लेकिन मैं दो वेबसर्वरों के बीच नेटवर्क ट्रैफ़िक के बारे में थोड़ा अधिक चिंतित हूं (विशेष रूप से) हम बड़े पैमाने पर) क्योंकि जब भी किसी को गुलाम वेबसर्वर के लिए संतुलित किया जाता है, तो उसके सत्रों को मास्टर वेबसर्वर से पूरे नेटवर्क में लाया जाएगा। मैं सोच रहा था कि क्या मैं दो को परिभाषित कर सकता हूं save_paths
ताकि नेटवर्क का उपयोग करने से पहले मशीनें अपने स्वयं के सत्र भंडारण में दिखें। उदाहरण के लिए:
मास्टर:
session.save_path="tcp://localhost:11211, tcp://192.168.0.2:11211"
दास:
session.save_path="tcp://localhost:11211, tcp://192.168.0.1:11211"
क्या यह सफलतापूर्वक सर्वरों में सत्र साझा करेगा और प्रदर्शन में मदद करेगा? यानी समय के 50% नेटवर्क ट्रैफिक को बचाएं। या यह तकनीक केवल फॉलोवर्स के लिए है (उदाहरण के लिए जब एक मेम्केच डेमन अप्राप्य है)?
नोट : मैं वास्तव में विशेष रूप से मेमकेच प्रतिकृति के बारे में नहीं पूछ रहा हूं - इसके बारे में और अधिक कि क्या PHP मेम्चेचे क्लाइंट प्रत्येक मेम्चेचे डेमॉन के अंदर एक पूल में चोटी कर सकता है, एक सत्र को वापस करता है यदि यह एक पाता है और केवल एक नया सत्र बनाता है यदि यह नहीं मिलता है सभी दुकानों में। जैसा कि मैं यह लिख रहा हूँ मैं सोच रहा हूँ कि मैं PHP, lol से थोड़ा बहुत पूछ रहा हूँ ...
मान लें : कोई चिपचिपा सत्र, राउंड-रॉबिन लोड संतुलन, LAMP सर्वर।