खैर फेसबुक कई कई बदलाव आया है और यह मूल रूप से कुशल होने के लिए बनाया नहीं था। इसे अपना काम करने के लिए डिजाइन किया गया था। मुझे बिल्कुल पता नहीं है कि कोड कैसा दिखता है और आपको शायद इसके बारे में अधिक जानकारी नहीं मिलेगी (स्पष्ट सुरक्षा और कॉपीराइट कारणों से), लेकिन केवल एपीआई पर नज़र डालें। देखें कि यह कितनी बार बदलता है और इसमें से कितना ठीक से काम नहीं करता है, अब या बिल्कुल भी।
मुझे लगता है कि सबसे बड़ी इक्का उनके आस्तीन Hiphop है। http://developers.facebook.com/blog/post/358 आप HipHop खुद का उपयोग कर सकते हैं: http://wiki.github.com/facebook/hiphop-php
लेकिन अगर आप मुझसे पूछें यह एक बहुत ही महत्वाकांक्षी और शायद समय बर्बाद कर कार्य है। हिपोप केवल इतना समर्थन करता है, यह सबकुछ सी ++ में परिवर्तित नहीं कर सकता है। तो यह हमें क्या बताता है? खैर, यह हमें बताता है कि फेसबुक पूरी तरह से PHP भाषा का लाभ नहीं ले रहा है। यह नवीनतम 5.3 का उपयोग नहीं कर रहा है और मैं शर्त लगाने के लिए तैयार हूं कि अभी भी PHP 4 संगत है। अन्यथा, वे हिपहॉप का उपयोग नहीं कर सके। हिपहॉप एक अच्छा विचार है और इसे बढ़ने और विस्तार करने की आवश्यकता है, लेकिन वर्तमान स्थिति में यह उन नए लोगों के लिए वास्तव में उपयोगी नहीं है जो नए PHP ऐप्स बना रहे हैं।
वहाँ भी राल/Quercus जैसी चीजों के माध्यम से जावा के लिए PHP के। दोबारा, यह सब कुछ का समर्थन नहीं करता है ...
ध्यान देने योग्य एक और बात यह है कि यदि आप किसी गैर-मानक PHP मॉड्यूल का उपयोग करते हैं, तो आप उस कोड को सी ++ या जावा में कनवर्ट करने में सक्षम नहीं होंगे। हालांकि ... चलिए PHP मॉड्यूल पर एक नज़र डालें। वे सी ++ में संकलित हैं। तो यदि आप PHP मॉड्यूल बना सकते हैं जो चीजें करते हैं (जैसे पार्स एक्सएमएल, इत्यादि) तो आप मूल रूप से (कुछ इंटरैक्शन घटा सकते हैं) एक ही गति पर काम कर रहे हैं।निस्संदेह आप प्रत्येक संभावित आवश्यकता और अपने पूरे ऐप के लिए केवल एक PHP मॉड्यूल नहीं बना सकते हैं क्योंकि आपको पुनः संकलन करना होगा और कोड, आदि के लिए यह बहुत मुश्किल होगा।
हालांकि ... कुछ आसान PHP हैं मॉड्यूल जो गति चिंताओं के साथ मदद कर सकते हैं। हालांकि दिन के अंत में, हमारे पास "क्लाउड" के रूप में जाना जाने वाला यह अद्भुत चीज़ है और इसके साथ, हम अपने अनुप्रयोगों (PHP शामिल) को स्केल कर सकते हैं, इसलिए इससे कोई फर्क नहीं पड़ता। हार्डवेयर सस्ता और सस्ता हो रहा है। अमेज़ॅन ने बस इसकी कीमतें (फिर से) बोल दी।
तो जब तक आप विचार के आसपास अपने PHP अनुप्रयोग कोड के रूप में है कि यह एक दिन पैमाने करने की आवश्यकता होगी ... तो मुझे लगता है कि तुम ठीक हो और मैं सच में यकीन है कि मैं भी फेसबुक और क्या देखो चाहते हैं नहीं कर रहा हूँ उन्होंने ऐसा इसलिए किया क्योंकि जब उन्होंने ऐसा किया, तो यह एक पूरी तरह से अलग दुनिया थी और अब वह बुनियादी ढांचे को बनाए रखने और इसे बनाए रखने की कोशिश कर रहा है ... अच्छा, आपको हिपहॉप जैसी चीजें मिलती हैं।
अब हिपहॉप आपकी मदद कैसे करेगा? यह नहीं होगा यह नहीं कर सकता आप ताजा शुरू कर रहे हैं, आप PHP 5.3 का उपयोग कर सकते हैं। मैं अत्यधिक अनुशंसा करता हूं कि PHP 5.3 ढांचे और सभी नए लाभ जो PHP 5.3 एसपीएल पुस्तकालयों के साथ तालिका में लाए और आपके डेटाबेस के बारे में भी सोचें। आप डेटाबेस से सामग्री की अधिकतर सेवा कर रहे हैं, इसलिए मोंगोडीबी और अन्य प्रकार के डेटाबेस देखें जो स्कीमा-कम और दस्तावेज़-उन्मुख हैं। वे "सामान्य" प्रकार की वेब साइट/ऐप के लिए बहुत तेज और बेहतर हैं।
Foursquare और Smugmug करके दूसरी कंपनी है कि नई प्रौद्योगिकी का उपयोग कर रहे हैं और वे इसे कैसे उपयोग कर रहे हैं की तरह नई कंपनियों में देखो। फेसबुक के रूप में सफल होने के लिए, मैं ईमानदारी से उन्हें एक कुशल वेब साइट/ऐप बनाने के "कैसे" के लिए नहीं देखूंगा। मैं यह नहीं कह रहा हूं कि उनके पास बहुत (प्रतिभाशाली लोग नहीं हैं जो वहां काम करते हैं जो रचनात्मक रूप से समस्याओं को हल कर रहे हैं ... मैं यह भी नहीं कह रहा हूं कि फेसबुक सामान्य रूप से एक अच्छा विचार नहीं है और यह नहीं है सफल और आपको इससे विचार नहीं मिलना चाहिए .... मैं बस इतना कह रहा हूं कि यदि आप अपना संपूर्ण स्रोत कोड देख सकते हैं, तो शायद आपको इससे फायदा नहीं होगा।
2. फेसबुक (वीडियो) पर स्केल - http: // www .infoq.com/प्रस्तुतिकरण/स्केल-ऑन-फेसबुक 3. फेसबुक चैट - एचटी टीपी: //www.infoq.com/news/2008/05/facebookchatarchitecture –
इसके अलावा http://highscalability.com/ बहुत लोकप्रिय साइटों के लिए आर्किटेक्चर के बारे में जानने के लिए एक शानदार जगह प्रतीत होता है। कोई फर्क नहीं पड़ता कि यह कितना सच है और कितना सट्टा है, लेकिन यह वहां है और बस कुछ करने के लिए ... –
[फेसबुक इंजीनियरिंग ब्लॉग] (http://www.facebook.com/notes.php?id= 9445547199) कभी-कभी अपने वास्तुकला और स्केलिंग चुनौतियों में महत्वपूर्ण अंतर्दृष्टि है। –