क्या प्रौद्योगिकियों का उपयोग करना चाहिए जब एक बड़ी सामाजिक वेबसाइट के लिए डिजाइनिंग (लेनदेन की एक बहुत कुछ के साथ, चहचहाना की तरह)? डेटाबेस - - वेबसर्वर - खुला स्रोत समाधान का उपयोग कर ओएसउच्च प्रदर्शन साइट
उत्तर
- Twitteruses Ruby-on-rails and Scala
- Facebook पीएचपी का उपयोग करता
- StackOverflow asp.net MVC के
का उपयोग करता है आप देख सकते हैं, यह नहीं करता है ' आप वास्तव में क्या चुनते हैं; इन साइटों में से सभी यातायात के बहुत सारे है, लेकिन बहुत अलग प्रौद्योगिकियों के आधार पर कर रहे हैं।
कोई फर्क नहीं पड़ता तो आप यह चुनेंगे पटकथा भाषा किस तरह का है, जब तक आप भारी memcached का उपयोग करेंगे। सही कैशिंग पदानुक्रम होना जरूरी है।
मैंने सोचा कि ये सभी ढांचे (PHP, asp.net ...) पहले से ही निर्मित कैश समर्थन – Jan
कुछ करते हैं, कुछ मत करो (के रूप में PHP 5.2/3 लेकिन एपीसी एक्सटेंशन के माध्यम से आसानी से शामिल किया जा सकता है)। बात यह है कि, आप वास्तव में एक कैशिंग यात्रा करना चाहते हैं। कैश के कई स्तरों (कम से कम 3, मैं लगातार डेटाबेस परत की गणना करूंगा) होने से आप डेटा को लगातार उपयोग के अनुसार वितरित कर सकते हैं। – aefxx
दिन के अंत में, यह निजी प्राथमिकता का मामला है। ट्विटर रेल पर रूबी का उपयोग करता है। विकिपीडिया PHP पर चलता है। रेडिट web.py नामक एक अजगर लाइब्रेरी का उपयोग करता है, लेकिन intitially, यह लिस्प में लिखा गया था। मैं कहूंगा कि उन तकनीकों को चुनें जिन्हें आप सबसे ज्यादा परिचित हैं।
Joel says रूप
पूरी दुनिया में लोग लगातार, नेट का उपयोग कर वेब ऐप्लिकेशन बनाने जावा का उपयोग कर, और PHP हर समय का उपयोग कर रहे हैं। उनमें से कोई भी प्रौद्योगिकी की पसंद के कारण असफल रहा है।
चुनें "बड़े 3" (नेट, जावा या PHP) आप बेहतर जानते हैं की जो भी - इन प्रौद्योगिकियों स्केलेबल होने के लिए जाना जाता है, या नहीं, अपनी साइट के असली सवाल स्केल करेगा कैसे साइट है संरचित और कोड की गुणवत्ता है - का उपयोग कर जो भी ढांचा आप के साथ सबसे परिचित हैं आपको लगता है कि प्राप्त करने का सबसे अच्छा मौका देता है।
कोई भी तकनीक जो आपके स्वाद को सुइट करती है, आपकी स्थिति में मुझे लगता है कि एल्गोरिदम अधिक महत्वपूर्ण है।
याहू इंजीनियरों से उच्च प्रदर्शन वेबसाइटों के अनुकूलन पर एक अच्छी पुस्तक High Performance Web Sites: Essential Knowledge for Front-End Engineers है। यह अच्छी और छोटी और मूल रूप से कम अच्छी तरह से खोजी गई फ्रंट-एंड को अनुकूलित करके वेबसाइटों को तेज़ी से बनाने के लिए कदमों पर एक बुलेट मार्गदर्शिका है।
सोशल नेटवर्किंग साइट्स में सबसे ज्यादा मायने रखता है बैकएंड, क्योंकि अधिकांश बाधाएं वहां से होंगी। आप नो-एसक्यूएल डेटाबेस पर विचार करना चाहेंगे।
की तरह कुछ अन्य लोगों के होते हैं:
- Hypertable
- MongoDB, Sourceforge द्वारा इस्तेमाल किया।
- CouchDB
प्रोग्रामिंग भाषा के लिए के रूप में, के रूप में अन्य लोगों ने कहा, यह बात है कि ज्यादा नहीं है। लेकिन यदि आप वास्तव में निर्णय नहीं ले सकते हैं, तो आप Tornado जैसे गैर-अवरुद्ध वेबसर्वर पर विचार करना चाहेंगे।
डेटाबेस पर अच्छी जानकारी। मैं हमेशा संबंधपरक डेटाबेस जहां ट्विटर और फेसबुक जैसी साइटों का उत्तर, लेकिन स्पष्ट रूप से नहीं – Marius
टेक्नोलॉजीज, तकनीक,
- अनुसंधान क्या अन्य बढ़ाया साइट का उपयोग किया और किया है और क्या समस्याओं वे था सफलताओं वह कम से कम थे, वहाँ iTunes, बात करती है और यूट्यूब पर साक्षात्कार पर पॉडकास्ट हैं
- नज़र उद्योग के सर्वोत्तम प्रथाओं पर और उन्हें
- के लिए लोगों का शब्द न लें, सुनिश्चित करें कि आप इसके बारे में पीआर ग्लिट्ज के विपरीत समस्या या सफलता को देखते हैं
- स्पष्ट चीजों से बचें जो लंबवत पैमाने पर नहीं हैं या क्षैतिज ly, डेटाबेस कनेक्टिविटी, सत्र - कुकीज़ और
- एक एसक्यूएल विकल्प कम ओवरहेड के रूप में नोस्कल स्टोरेज को देखें लेकिन कम कार्यक्षमता
- भाषा/ढांचे को देखते समय सावधानी बरतें। फ्रेमवर्क आपको बहुत सारी सामानों के साथ आते हैं जिनकी आपको आवश्यकता नहीं होती है, वे आपको शुरुआत में गति देते हैं और अंततः आपको धीमा कर देते हैं, यानी आप साइट बनाने के बजाय ढांचे को हैकिंग करने में अधिक समय बिताते हैं, वैसे ही भाषाएं यह करती हैं जो आप चाहते हैं कि आप आधुनिक, शांत हों कार्यक्रम में आदि
आप फेसबुक की तरह कुछ का निर्माण कर रहे हैं, तो अपने विकल्पों के लिए थोड़ा सीमित हैं, फेसबुक अपने स्वयं के पीएचपी क्रम बनाया है, जाँच HipHop For PHP
- 1. उच्च प्रदर्शन
- 2. उच्च प्रदर्शन एएसपी.नेट साइट (> 1000 अनुरोध/सेकेंड)
- 3. मोबाइल पहचान उच्च ट्रैफ़िक साइट
- 4. उच्च-प्रदर्शन रीयलटाइम डेटा प्रदर्शन
- 5. उच्च प्रदर्शन हाइबरनेट सम्मिलित
- 6. wpf 2d उच्च प्रदर्शन ग्राफिक्स
- 7. QPainter प्रदर्शन उच्च फ्रेम दर
- 8. उच्च प्रदर्शन (500-1000 नोड्स)
- 9. सी # - कुछ उच्च प्रदर्शन सर्वोत्तम अभ्यास/ADO.NET
- 10. उच्च प्रदर्शन ग्राफिक्स WPF दृश्य परत
- 11. उच्च प्रदर्शन नेटवर्क अनुप्रयोगों के सर्वोत्तम अभ्यास
- 12. उच्च प्रदर्शन कैसे लिखें नेटी क्लाइंट
- 13. उच्च प्रदर्शन सी ++ बहु आयामी सरणी
- 14. रेल पर रूबी के साथ उच्च प्रदर्शन आरएसएस/एटम पार्सिंग
- 15. उच्च डेटा दरों के साथ ग्राफिकल चार्ट का प्रदर्शन बढ़ाना
- 16. उच्च ट्रैफ़िक वेबसाइट पर प्रदर्शन के लिए कितना महत्वपूर्ण है?
- 17. वीसी ++/सी ++ उच्च प्रदर्शन मल्टीथ्रेड किए गए जीयूआई व्यापार
- 18. उच्च प्रदर्शन SQL सर्वर डेटाबेस डिज़ाइन के लिए संसाधन
- 19. क्या उच्च प्रदर्शन पृष्ठ लिखने का सबसे तेज़ तरीका है?
- 20. टीसीपी विश्वसनीयता बनाम उद बर्डेंस गंभीर, उच्च प्रदर्शन सर्वर
- 21. उच्च प्रदर्शन कम विलंबता सी ++ कस्टम स्ट्रिंग वर्ग
- 22. जावा: उच्च-प्रदर्शन संदेश-पासिंग (सिंगल-निर्माता/सिंगल-उपभोक्ता)
- 23. उच्च प्रदर्शन सी # सर्वर सॉकेट के लिए टिप्स/तकनीक
- 24. सुपर उच्च प्रदर्शन सी/सी ++ हैश नक्शा (तालिका, शब्दकोश)
- 25. केर्बेरोस प्रमाणीकरण के साथ एक साइट लोड/प्रदर्शन परीक्षण
- 26. एएसपीनेट-एमवीसी साइट पर चींटियों का प्रदर्शन प्रोफाइलर संलग्न करना
- 27. MySQL उच्च CPU उपयोग
- 28. उच्च ट्रैफ़िक साइट के लिए स्कैला के लिए सर्वश्रेष्ठ वेब डेटाबेस समाधान?
- 29. उच्च निष्पादन JMS संदेश
- 30. शेयरपॉइंट साइट के प्रदर्शन को बढ़ाने के लिए आप क्या कदम उठाते हैं?
फेसबुक वास्तव में एक संकलित करने के लिए सी ++ के संस्करण का उपयोग करता पीएचपी, इसे देखें http://developers.facebook.com/news.php?story=358&blog=1 –