2009-06-23 11 views
7

मैं एक .NET डेवलपर हूं। मुझे पाइथन पर कोई अनुभव नहीं है। कौन सा मंच अधिक स्केलेबल है? बड़े आकार के उच्च-ट्रैफिक वेबसाइटों के लिए कौन सा मंच अधिक उपयुक्त है? यदि आपको इन प्लेटफार्मों पर स्केलेबिलिटी के बारे में कोई अनुभव है, तो कृपया हमें सूचित करें।पाइथन/डीजेगो या सी #/एएसपी.नेट?

धन्यवाद।

उत्तर

14

बहुत रूप में मैं अजगर प्यार (और, यह एक बहुत है -!), यदि आप सी # में अत्यधिक कुशल हैं और, जैसा कि आप कहते हैं,, अपने कोड को और अधिक विश्वसनीय हो जाएगा "अजगर पर कोई अनुभव नहीं है" और उपयुक्त (अगले कई महीनों के लिए, कम से कम) यदि आप जो कुछ भी जानते हैं उसके साथ चिपके रहते हैं। दोनों प्लेटफॉर्म पर एक कल्पित डेवलपर बेहद कुशल के लिए, स्केलेबिलिटी अनिवार्य रूप से धोने के लिए होगी, और पायथन उस डेवलपर की उत्पादकता को बढ़ाएगा; लेकिन किसी भी तकनीक में वास्तव में अच्छा होने से अभ्यास के कुछ महीने लगते हैं, यह जादूगर रूप से "बस होता है" नहीं होता है।

इसलिए, जब तक कि आप अपनी कौशल और नौकरी के अवसरों को विस्तृत करने की कोशिश नहीं कर रहे हैं, या अपनी उत्पादकता में वृद्धि नहीं कर रहे हैं, बल्कि विशेष रूप से, उन वेब ऐप्स की स्केलेबिलिटी पर सख्ती से ध्यान केंद्रित कर रहे हैं जिन्हें आप अभी कोडिंग कर रहे हैं, मेरे पास है, अच्छी विवेक में, आपको सी # के साथ चिपकने की सलाह देने के लिए। आपको आयरनपीथन का भी प्रयास करना चाहिए (और मैनिंग्स - बायस अलर्ट से महान "आयरनपीथन इन एक्शन" पुस्तक प्राप्त करें, मैं लेखक के साथ मित्र हूं और उस पुस्तक का एक तकनीकी समीक्षक था ;-) गैर-उत्पादन सहायक कोड के सभी प्रकार के लिए , इसका स्वाद प्राप्त करने के लिए और अविश्वसनीय उत्पादकता बढ़ाने के लिए यह आपको दे सकता है ... लेकिन, अपने ग्राहकों या नियोक्ताओं के लिए सर्वोत्तम मूल्य प्रदान करने के लिए, आप वास्तव में मास्टर, सी #, के लिए चिपके रहें स्केलेबिलिटी-महत्वपूर्ण काम जो आप वितरित करते हैं उनको!

13

लगभग सभी प्रसिद्ध ढांचे और भाषाएं स्केल कर सकती हैं।

इससे कोई फर्क नहीं पड़ता कि आप किस का उपयोग करते हैं। यह इस बारे में है कि आप सबसे अधिक महत्वपूर्ण कोड को कितनी अच्छी तरह व्यवस्थित करते हैं।

व्यक्तिगत स्तर पर एक से अधिक भाषाओं को जानना हमेशा अच्छा होता है।

लेकिन, आप पूरी तरह स्केलेबल पायथन, PHP, .NET अनुप्रयोग बना सकते हैं। कोड की गुणवत्ता पहली जगह स्केलेबिलिटी भाषा नहीं गिर जाएगी।

+0

तो सच है, बहुत अच्छी तरह से कहा! यदि आप एक पूर्ण प्रोग्रामिंग हैं ... तो मैं स्केलेबिलिटी के कारण .NET का उपयोग करूंगा लेकिन यदि आप विश्वसनीयता चाहते हैं तो मैं अब PHP का उपयोग करूंगा। –

3

डेरेक का एक अच्छा जवाब था, इसलिए मैं इसे दोहराना नहीं चाहूंगा।

हालांकि, मैं एक अवलोकन करना चाहता हूं। अधिकांश भाग के लिए, भाषा पसंद वास्तव में इन दिनों एक बड़ा सौदा नहीं है, अगर आपको वास्तव में उच्च प्रदर्शन और स्केलेबिलिटी की आवश्यकता है, तो पाइथन की गतिशील प्रकृति आपको वापस लेने के लिए वापस आ सकती है। एक गतिशील भाषा प्रदान करने वाले सभी लाभों के लिए, वे लाभ अतिरिक्त ओवरहेड की लागत पर आते हैं। .NET प्लेटफार्म पूरी तरह से संकलित भाषाओं की पेशकश करता है, और संकलित कोड (एनजेन समर्थन सहित) के प्रदर्शन को ट्यून करने के कई तरीकों की पेशकश करता है, ताकि आप मूल रूप से संकलित मॉड्यूल बना सकें जिन्हें JITted होने की आवश्यकता नहीं है।)

मैं नहीं करता पता है कि प्रदर्शन किनारे .NET संकलित भाषाओं में पाइथन पर आपके विशेष एप्लिकेशन के लिए वास्तव में पर्याप्त है, लेकिन यह देखते हुए कि आप पहले से ही .NET डेवलपर हैं, एएसपी.NET के साथ जाकर सबसे अच्छा विकल्प हो सकता है।

+0

हाँ, मैं इस तथ्य के बारे में सोच रहा हूं (संकलित बनाम संकलित भाषाओं) कैसे Google और फेसबुक जैसी बड़ी बंदूकें व्याख्या की गई भाषाओं के साथ प्रबंधित होती हैं?यहां तक ​​कि थोड़ी सी बढ़त भी एक बड़ा अंतर बनाती है, यहां तक ​​कि जीमेल और ट्यूब के लिए भी (जो पाइथन सही है?) मैंने सुना है कि संकलित भाषा संकलित भाषाओं की तुलना में 10 गुना धीमी गति से चल सकती है ?? – gideon

+0

"edgy" कंपनियां एमएस के गुलाम नहीं बनना चाहती हैं, न ही उनके साथ जुड़ी लागतें। यदि आप लगभग सभी अच्छी तरह लिखित कार्यान्वयन पर पर्याप्त हार्डवेयर फेंकते हैं, तो आप बिल्कुल ठीक से जीवित रहेंगे। यही कारण है कि फेसबुक जैसी कंपनियां PHP के रूप में धीमी गति से कुछ उपयोग कर सकती हैं, लेकिन यह उन्हें हिपॉप के साथ प्रदर्शन समस्याओं को ठीक करने का प्रयास करने से भी नहीं रोकती है। समस्या यह है कि औसत जो समस्या पर उस तरह के हार्डवेयर या संसाधन फेंक नहीं सकता है। सी ++, सी # और जावा प्रदर्शनविले में पहाड़ी के राजा हैं, और सी # .NET बड़े पैमाने पर परियोजनाओं के तेज़ी से विकास के लिए एक ठोस समाधान है। – jsteinmann

1

विंडोज सर्वर लाइसेंस की लागत (न्यूनतम पर, आप आमतौर पर SQL सर्वर भी जोड़ते हैं) पर .NET के साथ जाने के साथ एक अतिरिक्त स्केलेबिलिटी लागत है।

+1

मोनो का उपयोग करके लिनक्स पर एएसपी.NET अनुप्रयोगों को भी तैनात किया जा सकता है। (मेरे पास अपाचे और nginx सर्वर पर एएसपी.NET अनुप्रयोगों को तैनात करने वाला असली दुनिया अनुभव है।) मौद्रिक लागत वास्तव में एक मुद्दा नहीं है क्योंकि आपको विंडोज लाइसेंस की आवश्यकता नहीं है, जब तक कि आप मोनो में लागू नहीं किए गए .NET सुविधाओं का उपयोग न करें । – cdhowie

+0

कुछ वातावरणों में, "स्केलेबिलिटी की लागत" टीमों, संसाधनों आदि के आकार के कारण लगभग मूक है। इसलिए जब आप "सर्वर लाइसेंस" के बारे में बात करते हैं, तो एक विंडोज़ आईआईएस सर्वर * कई वेबसाइटों को * सेवा दे सकता है। ज्यादातर मामलों में, यह उत्तर गैर अनुक्रमक है। – IAbstract