2011-04-01 16 views
5

मुझे 2 वेबसर्वर संतुलित लोड होते हैं, जो 1 माइस्क्ल सर्वर से जुड़े होते हैं। सर्वर पर PHP अनुप्रयोग की कार्यक्षमता में से एक उपयोगकर्ताओं को उन चित्रों को अपलोड करने की अनुमति देता है जिन्हें किसी भी वेब सर्वर से एक्सेस किया जाना चाहिए। ऐसा करने का सबसे अच्छा समाधान क्या होगा?फ़ाइल लोड संतुलित सर्वरों के लिए सबसे अच्छा समाधान अपलोड करें

  • बादलों को चित्र अपलोड करें?
  • स्टोर डेटाबेस
  • में चित्रों MySQL सर्वर (डेटाबेस, फाइल सिस्टम)
  • के लिए चित्रों अपलोड करें ...?

आपकी सलाह के लिए धन्यवाद।

उत्तर

0

मैं फाइल सिस्टम पर किसी फ़ोल्डर को अपलोड करने की अनुशंसा करता हूं। फिर समय-समय पर क्रॉन नौकरी चलाएं कि rsync दो सर्वरों के बीच फ़ोल्डर है। आप छवि अपलोड के साथ प्रक्रिया में rsync चला सकते हैं। डेटाबेस में छवियों को संग्रहीत करना जटिल हो सकता है और आपके डेटाबेस को मिटा सकता है।

2

उपर्युक्त कार्यों की तरह रुनक, लेकिन यदि आप वर्डप्रेस प्लेटफ़ॉर्म की तरह कुछ उच्च ट्रैफ़िक साइट चला रहे हैं तो अपलोड की गई छवियों की संख्या निर्देशिका वृक्ष में घुसने के लिए rsync के लिए बहुत जल्दी हो सकती है, और आप पहले rsync धीमे नीचे देखेंगे चेकसम भाग के दौरान भी एक क्रॉल, और फिर यह बहुत ही फाइलों के साथ निर्देशिका में ls करते समय काम करना बंद कर देगा। लेकिन जब तक आप इन समस्याओं का सामना नहीं करते हैं तब तक यह सबसे अच्छा समाधान है।

एक और समाधान एक दूरस्थ घुड़सवार एनएफएस विभाजन है, लेकिन जब तक कि आप वास्तव में विश्वसनीय वातावरण में नहीं हैं तब तक यह असुरक्षित है।

एक अन्य समाधान तुरंत अमेज़ॅन एस 3 पर फ़ाइल डालने और फिर अपने डेटाबेस में यूआरएल लिंक स्टोर करना होगा और पेज लोड पर इसे प्रस्तुत करना होगा।

डेटाबेस में चित्रों को स्टोर न करें - जो वास्तव में डीबी तालिका को धीमा कर देता है।

1

ग्लूस्टरफ़ेस का उपयोग करके मेरे पास बहुत अच्छे परिणाम हुए हैं, जो एक प्रतिकृति फाइल सिस्टम है, और क्लाउड स्टोरेज के लिए अमेज़ॅन एस 3 है।