एर्लैंग का उपयोग कहाँ और क्यों किया जाता है? [बन्द है]


258

मैं सबसे आम एप्लिकेशन / वेबसाइटों / समाधानों की एक सूची जानना चाहूंगा जहां Erlang का उपयोग किया जाता है, सफलतापूर्वक या नहीं

यह समझाने के लिए कि इसका उपयोग अन्य भाषाओं के बजाय एक विशिष्ट समाधान में क्यों किया जाता है, प्रोग्रामिंग भाषाओं की बहुत सराहना की जाएगी।

बीएडी एर्लैंग केस अध्ययनों की सूची (ऐसे मामले जिनमें एर्लैंग का दुरुपयोग किया जाता है) यह दिलचस्प होगा, साथ ही साथ।


13
बीएड के मामले के अध्ययन के साथ समस्या यह है कि वे वास्तव में प्रसिद्ध नहीं होते हैं या दिन की रोशनी नहीं देखते हैं।
एरिक

2
व्हाट्सएप का इस्तेमाल होता है एर्लांग! Google इसे विवरण के लिए
मुजैया जोशुआ

18
यह बंद क्यों है? मैंने सटीक सवाल पूछा और यहाँ नेतृत्व किया गया।
canhazbits

EMqtt एक बहुत ही लोकप्रिय MQTT ब्रोकर है और आजकल IoT में बहुत अधिक उपयोग किया जा रहा है, 1 मिलियन उपयोगकर्ता स्थिरता के साथ erangang में विकसित किया गया है ।
लामरीन TAWSRAS

जवाबों:


214

से Erlang प्रोग्रामिंग :

ऑल्ट टेक्स्ट

कई कंपनियाँ अपने उत्पादन प्रणालियों में एर्लैंग का उपयोग कर रही हैं:

अमेज़ॅन , सिर्फ़DBDB को कार्यान्वित करने के लिए अमेज़न का उपयोग करता है, अमेज़ॅन इलास्टिक कम्प्यूट क्लाउड (EC2) के एक भाग के रूप में डेटाबेस सेवाएँ प्रदान करता है।

याहू! अपनी सोशल बुकमार्किंग सर्विस, डिलीशियस में इसका उपयोग करता है, जिसके 5 मिलियन से अधिक उपयोगकर्ता और 150 मिलियन बुकमार्क किए गए URL हैं।

फेसबुक अपनी चैट सेवा के बैकएंड को 100 मिलियन से अधिक सक्रिय उपयोगकर्ताओं को संभालने के लिए एर्लांग का उपयोग करता है।

व्हाट्सएप मैसेजिंग सर्वर चलाने के लिए एरलांग का उपयोग करता है, प्रति सर्वर 2 मिलियन कनेक्टेड उपयोगकर्ताओं को प्राप्त करता है।

टी-मोबाइल अपने एसएमएस और ऑथेंटिकेशन सिस्टम में एरलांग का उपयोग करता है।

मोटोरोला सार्वजनिक सुरक्षा उद्योग में कॉल प्रोसेसिंग उत्पादों में एर्लैंग का उपयोग कर रहा है।

एरिक्सन अपने सपोर्ट नोड्स में Erlang का उपयोग करता है, जिसका उपयोग दुनिया भर में GPRS और 3G मोबाइल नेटवर्क में किया जाता है।


सबसे लोकप्रिय ओपन सोर्स एर्लैंग एप्लिकेशन में निम्नलिखित शामिल हैं:

• 3 डी उपखंड मॉडलर विंग्स 3 डी , मॉडल और बनावट बहुभुज मेश के लिए उपयोग किया जाता है।

Ejabberd प्रणाली, जो एक त्वरित संदेश ( IMMP ) आधारित अनुप्रयोग सर्वर पर एक्स्टेंसिबल मैसेजिंग और प्रेज़ेंस प्रोटोकॉल (XMPP) प्रदान करती है।

CouchDB “स्कीमा-कम” दस्तावेज़-उन्मुख डेटाबेस, मल्टीकोर और मल्टीज़रवर समूहों में स्केलेबिलिटी प्रदान करता है।

मोचीवेब लाइब्रेरी जो हल्के HTTP सर्वर के निर्माण के लिए सहायता प्रदान करती है। इसका उपयोग MochiBot और MochiAds जैसी बिजली सेवाओं के लिए किया जाता है, जो प्रतिदिन लाखों दर्शकों को गतिशील रूप से उत्पन्न सामग्री प्रदान करती हैं।

RabbitMQ , एक AMQP मैसेजिंग प्रोटोकॉल कार्यान्वयन। AMQP उच्च प्रदर्शन उद्यम संदेश के लिए एक उभरता हुआ मानक है।


27
रमिज़ उद्दीन - जब आप कहते हैं कि "आप नहीं हैं, तो कौन सी नई प्रणाली की बात कर रहे हैं?"
महान कछुआ

10
@RamizUddin जब आप कहते हैं कि आप किस नई प्रणाली के बारे में बात कर रहे हैं "नहीं, यह नहीं है?" (मैं सिर्फ महान कछुए द्वारा एक सवाल दोहरा रहा हूं, जो कुछ साल पहले आपके नाम के सामने @ भूल गया था - मुझे लगता है कि यह फिर भी एक उत्तर के हकदार हैं)
वाल्टर ट्रॉस

4
: फेसबुक erlang से दूर बंद कर facebook.com/notes/facebook-engineering/... और quora.com/...
ए Binzxxxxxx

फेसबुक ने व्हाट्सएप की सादगी और प्रदर्शन को बर्बाद कर दिया।
कृष्णदास पीसी

क्या आप पुस्तक के लिए लिंक को तोड़ सकते हैं?
प्रद्युम्नपाद

83

ejabberd एक सबसे अच्छी तरह से erlang एप्लिकेशन है और जिसे मैंने सीखा है, वह है।

मुझे लगता है कि यह erlang सीखने के लिए सबसे दिलचस्प परियोजना में से एक है क्योंकि यह वास्तव में erangang की ताकत पर निर्माण कर रहा है। (हालांकि कुछ तर्क देंगे कि यह ओटीपी नहीं है, लेकिन चिंता न करें कि अभी भी अंदर महान कोड की एक प्रति है ...)

क्यों ?

एक XMPP सर्वर (ejabberd की तरह) को उच्च स्तर के राउटर के रूप में देखा जा सकता है, जो अंत उपयोगकर्ताओं के बीच संदेश भेज रहा है। बेशक वहाँ अन्य विशेषताएं हैं, लेकिन यह एक त्वरित संदेश सर्वर का सबसे महत्वपूर्ण पहलू है। इसमें कई संदेशों को एक साथ रूट करना है, और कई टीसीपी / आईपी कनेक्शनों को संभालना है।

तो हम 2 विशेषताएं हैं:

  • कई कनेक्शन संभालें
  • मार्ग संदेशों ने संदेश के कुछ पहलुओं को दिया

ये ऐसे उदाहरण हैं जहां एरांग चमकते हैं।

कई कनेक्शन संभालें

स्केलेबल नॉन-ब्लॉकिंग टीसीपी / आईपी सर्वरों को एर्लैंग के साथ बनाना बहुत आसान है। वास्तव में, यह इस समस्या को हल करने के लिए डिज़ाइन किया गया था। और यह देखते हुए कि यह सैकड़ों हजार प्रक्रियाओं को फैला सकता है (और धागे नहीं , यह एक शेयर-नॉन-अप्रोच है, जो डिजाइन करने के लिए सरल है), ejabberd को erlang प्रक्रियाओं के सेट के रूप में डिज़ाइन किया गया है (जिसे कई सर्वरों पर वितरित किया जा सकता है):

  • क्लाइंट कनेक्शन प्रक्रिया
  • राउटर प्रक्रिया
  • चैटरूम प्रक्रिया
  • सर्वर से सर्वर प्रक्रियाओं

सभी ने संदेशों का आदान-प्रदान किया।

मार्ग संदेशों ने संदेश के कुछ पहलुओं को दिया

एर्लैंग की एक और बहुत प्यारी विशेषता पैटर्न मिलान है । यह पूरे भाषा में उपयोग किया जाता है।

उदाहरण के लिए, निम्नलिखित में:

access(moderator, _Config)->  rw;
access(participant, _Config)->  rw;
access(visitor, #config{type="public"})->  r;
access(visitor, #config{type="public_rw"})->  rw;
access(_User,_Config)->  none.

यह accessफ़ंक्शन के 5 अलग-अलग संस्करण हैं । एर्लैंग प्राप्त तर्कों को देखते हुए सबसे उपयुक्त संस्करण का चयन करेगा। ( Configएक प्रकार की संरचना है #configजिसमें एक typeविशेषता है)।

इसका मतलब यह है कि यह बहुत आसान है और बहुत स्पष्ट है कि इसका पीछा करना if/elseया switch/caseव्यावसायिक नियम बनाना।

काम ख़त्म करना

स्केलेबल सर्वर लिखना, यह इरलैंग का संपूर्ण बिंदु है। सब कुछ इसे आसान बना रहा है। पिछली दो विशेषताओं पर, मैं जोड़ूंगा:

  • हॉट कोड अपग्रेड
  • mnesia, वितरित संबंधपरक डेटाबेस (आधार वितरण में शामिल)
  • mochiwebजिस पर ज्यादातर http erlang सर्वर बनाए जाते हैं
  • बाइनरी समर्थन (डीकोडिंग और एन्कोडिंग बाइनरी प्रोटोकॉल आसान है)
  • महान ओपन सोर्स प्रोजेक्ट्स के साथ एक महान समुदाय ( ejabberd, couchdbलेकिन यह भी webmachine, riakऔर लाइब्रेरी के एक स्लीव को एम्बेड करना बहुत आसान है)

कम LOCs

रिचर्ड जोन्स का यह लेख भी है । उन्होंने C ++ से erlang: erlang में 75% कम लाइनों के लिए एक एप्लिकेशन को फिर से लिखा।


6
निष्पक्ष होने के लिए, आधुनिक भाषा में दोबारा लिखे गए किसी भी C ++ कोड से LOC कम हो जाएगी।
ज़ैक

52

Erlang के लिए सबसे आम अनुप्रयोगों की सूची को कवर किया गया है (CouchDb, ejabberd, RabbitMQ आदि) लेकिन मैं निम्नलिखित योगदान देना चाहूंगा।

इन अनुप्रयोगों में इसका उपयोग करने का कारण एर्लांग की मुख्य ताकत से आता है: आवेदन की उपलब्धता का प्रबंधन ।

Erlang को टेल्को पर्यावरण के लिए जमीन से बनाया गया था, जिसमें यह व्यवस्था थी कि सिस्टम कम से कम 5x9 की उपलब्धता (99.999% वार्षिक अप-टाइम) को पूरा करे। यह आंकड़ा एक वर्ष के दौरान डाउनटाइम के लिए बहुत जगह नहीं छोड़ता है! इस कारण से मुख्य रूप से, एरलांग निम्नलिखित विशेषताओं (गैर-संपूर्ण) के साथ लोड होता है:

  • क्षैतिज स्केलेबिलिटी (सहज इंट्रा और इंटर मशीन संचार के माध्यम से आसानी से मशीन की सीमाओं के पार वितरण की क्षमता)। अंतर्निहित डेटाबेस (मानेसिया) भी प्रकृति द्वारा वितरित किया जाता है।

  • ऊर्ध्वाधर मापनीयता (एक ही मशीन पर संसाधन संसाधन में नौकरियों को वितरित करने की क्षमता): एसएमपी को मूल रूप से संभाला जाता है।

  • कोड गर्म गमागमन : अद्यतन / उन्नयन कोड करने की क्षमता को लाइव आपरेशनों के दौरान

  • एसिंक्रोनस : वास्तविक दुनिया एसिंक्रोसस है इसलिए इस मूल प्रकृति के लिए एर्लांग को बनाया गया था। एक विशेषता जो इस आवश्यकता में योगदान करती है: एरलैंग की "मुक्त" प्रक्रिया (> 32000 समवर्ती चला सकती है)।

  • पर्यवेक्षण : पुनरारंभ रणनीतियों, थ्रेसहोल्ड आदि के साथ प्रक्रिया पर्यवेक्षण के लिए कई अलग-अलग रणनीतियाँ, कोने-मामलों से उबरने में मदद करती हैं / बाद में अधिक आसानी से ओवरलोडिंग करती हैं, जबकि बाद में परेशानी, पोस्टमार्टम विश्लेषण आदि के लिए समस्याओं के निशान बनाए रखती हैं।

  • संसाधन प्रबंधन : समयबद्धन रणनीति, संसाधन निगरानी आदि ध्यान दें कि डिफ़ॉल्ट प्रक्रिया अनुसूचक O (1) स्केलिंग के साथ संचालित होती है।

  • लाइव डिबगिंग : लाइव नोड्स में "लॉग" करने की क्षमता मुसीबत-शूटिंग गतिविधियों में मदद करती है। डिबगिंग को किसी भी प्रक्रिया के चलने की स्थिति तक पूरी पहुंच के साथ लाइव किया जा सकता है। इसके अलावा अंतर्निहित त्रुटि रिपोर्टिंग उपकरण बहुत उपयोगी हैं (लेकिन कभी-कभी उपयोग करने के लिए कुछ अजीब)।

बेशक मैं इसकी कार्यात्मक जड़ों के बारे में बात कर सकता हूं लेकिन यह पहलू मुख्य लक्ष्य (उच्च उपलब्धता) के लिए कुछ हद तक रूढ़िवादी है। कार्यात्मक प्रकृति का मुख्य घटक जो लक्ष्य लक्ष्य के लिए उदारता से योगदान देता है, वह है IMO: "शेयर नथिंग"। यह विशेषता "साइड इफेक्ट्स" को रोकने में मदद करती है और महंगी तुल्यकालन तंत्र की आवश्यकता को कम करती है।

मुझे लगता है कि ये सभी विशेषताएँ व्यावसायिक महत्वपूर्ण अनुप्रयोगों में एर्लैंग का उपयोग करने के लिए एक मामले का विस्तार करने में मदद करती हैं।

एक बात एरलांग वास्तव में अच्छी नहीं है : डेटा के बड़े ब्लॉक प्रसंस्करण।


4
क्या आप निम्नलिखित की व्याख्या कर सकते हैं: "एक बात एरलांग वास्तव में अच्छी नहीं है: डेटा के बड़े ब्लॉक को संसाधित करना।"
किरिल ट्रोफिमोव

9
उसका मतलब है एमपीईजी डेटा को डिकोड करना। बहुत अधिक संख्यात्मक संगणना है जिसके लिए एरलंग को अनुकूलित नहीं किया गया है। यदि प्रोसेसिंग में केवल एक स्थान से दूसरे स्थान पर डेटा के बड़े ब्लॉक को फेरबदल करना शामिल है, तो एर्लांग इसमें काफी अच्छा है। (टीपीसी सॉकेट्स के लिए फाइलें, आदि)
क्रिश्चियन

4
आप डेटा के साझा ब्लॉक को अपडेट नहीं कर सकते हैं (एर्लैंग में कोई संकेत नहीं हैं) और इसलिए डेटा को उन प्रक्रियाओं पर बंद करना होगा जो बदले में अक्षमताओं का अनुवाद करते हैं।
१३:५३

एक तरफ, एरिक्सन के रूप में, मेरा मानना ​​है कि एर्लांग ने 9x9 की उपलब्धता हासिल की।
जोनो

हम यहां उद्धृत एर्लांग की कमजोरी पर सुधार करने पर विचार कर रहे हैं।
शेल्बी मूर तृतीय

19

एर्लैंग एरिक्सन से आता है, और उनके कुछ टेलीकॉम सिस्टम के भीतर उपयोग किया जाता है।

टेलीकॉम के बाहर, काउचडब (एक दस्तावेज़-उन्मुख डेटाबेस) संभवतः अब तक का सबसे प्रसिद्ध एर्लैंग एप्लिकेशन है।

एर्लांग क्यों? से अवलोकन (लायक पूर्ण में पढ़ने):

दस्तावेज़, दृश्य, सुरक्षा और प्रतिकृति मॉडल, विशेष उद्देश्य क्वेरी भाषा, कुशल और मजबूत डिस्क लेआउट और Erlang मंच के समवर्ती और विश्वसनीय प्रकृति सभी एक विश्वसनीय और कुशल प्रणाली के लिए सावधानीपूर्वक एकीकृत हैं।


1
के लिए कुछ उनके दूरसंचार प्रणालियों के।
१२:०४ पर jldupont

1
CouchDB एक OO डेटाबेस नहीं है, यह एक दस्तावेज़-उन्मुख डेटाबेस है।
मैं

5
@ मैं निश्चित रूप से दे - हाँ, बिल्कुल। सही किया। मैं आपका moniker बदलूंगा :-)
ब्रायन एग्न्यू

एरिक्सन द्वारा PLEX (एक्स्चेंजिंग लैंग्वेज के लिए प्रोग्रामिंग) नामक एक पहले की संगोष्ठी भाषा का उपयोग किया गया था, जो 80 के दशक के अंत तक अब तक डिजिटल टेलीफोन एक्सचेंज चला रहा था। मुझे लगता है कि erlang PLEX का परिष्कृत संस्करण है।
user50619

19

हमने Erlang का उपयोग करते हुए एक सट्टेबाजी विनिमय (उर्फ भविष्यवाणी बाजार) का निर्माण किया। बिल्ट-इन कॉन्सर्ट के कारण हमने कुछ और पारंपरिक वित्तीय भाषाओं (C ++, जावा आदि) पर एरलैंग को चुना। बाजार टेलीफोनी एक्सचेंजों के समान ही कार्य करते हैं। हमारे सीटीओ ने सीटीओ टॉक में एरलांग के हमारे उपयोग पर एक बात की

हम CouchDB और RabbitMQ का उपयोग अपने स्टैक के हिस्से के रूप में भी करते हैं।


10
बस एक नोट, आपकी बात की कड़ी अब निजी है।
20

15

मुझे पता चला कि यह एक रिपोर्ट लिखने की प्रक्रिया में है: एरलांग एकॉस्टिक रे ट्रेसिंग में

यह एक अनुसंधान समूह की ओर से ध्वनिक रे ट्रेसिंग के लिए एर्लांग का उपयोग करने के प्रयास पर एक अनुभव रिपोर्ट है। उन्होंने पाया कि कार्यक्रम को लिखना आसान था, लेकिन कम बगिया, आदि ने इसे बदतर बना दिया, और तुलनात्मक सी कार्यक्रम की तुलना में 10 गुना धीमा प्रदर्शन किया। इसलिए एक स्थान जहां यह अच्छी तरह से अनुकूल नहीं हो सकता है वह है सीपीयू गहन परिदृश्य।

हालांकि, ध्यान दें कि लोगों ने लिखा था कि कागज पहले एरलंग सीखने के चरणों में थे, और सीपीयू गहन एर्लैंग के लिए उचित विकास प्रक्रियाओं को नहीं जानते होंगे।


2
पेपर एक दिलचस्प रीड है। यह सीधे तौर पर उपयुक्तता के बारे में सामान्यीकरण नहीं करता है, यह इंगित करता है कि यदि वे आईबीएम सेल बीई प्रोसेसर पर तैनात करने की कोशिश कर रहे हैं, तो उन्हें इरलैंग अनुपयोगी पाया गया था। प्लेस्टोर 3 में पाया गया। यह भी बताता है कि वे एरलैंग के साथ अनुभवहीन हैं। अधिक अनुभव और उपयुक्त हार्डवेयर के साथ वे एक अलग निष्कर्ष पर पहुंच सकते हैं। मुझे आभास होता है कि उनके कोड में गैर-पूंछ-पुनरावर्ती कार्यों का उपयोग शामिल हो सकता है; यदि ऐसा है तो यह मेमोरी, कचरा संग्रहण, क्रैश और प्रदर्शन के साथ उनकी समस्याओं को समझाने का कोई तरीका हो सकता है।
टिम

3
मुझे लगता है कि आपने लेख को गलत बताया। सेल प्रोसेसर पर चलने में असमर्थता दुर्भाग्यपूर्ण थी, लेकिन यह केवल एक साइड नोट था। एक C86 और X86 प्लेटफॉर्म पर चल रहे एर्लैंग कार्यान्वयन के बीच 12x प्रदर्शन अंतर वास्तविक समस्या थी, इस तथ्य के साथ संयुक्त कि यह रैखिक रूप से पैमाने पर नहीं था। उस ने कहा, वे भाषा के लिए नए थे, और कुछ नासमझ कोड पथ ले सकते हैं ... ऐसा जीवन है। मैं हालांकि गैर-रेखीय स्केलिंग के बारे में उत्सुक हूं।
कोडरताओ

4
मैं इंटेल बनाम सेल के संबंध में 12x के प्रदर्शन के मुद्दे पर सही हूं, लेकिन मैं यह बताता हूं कि एर्लैंग सीपीयू के विभिन्न परिदृश्यों के अनुकूल हो सकता है। यह कहना कि वे सही नहीं हैं: यह वास्तव में एक समस्या हो सकती है जहां एक अच्छा C ++ समाधान हमेशा एक अच्छा Erlang समाधान को हरा देगा। शायद यह कुछ लोगों को एक अनुस्मारक के रूप में सेवा करने की दिशा में जाता है कि एर्लांग, किसी भी अन्य तकनीक की तरह, कोई चांदी की गोली नहीं है और यह केवल तभी चमकता है जब सही जगह पर सही तरीके से उपयोग किया जाता है।
टिम

14

जाहिरा तौर पर, याहू ने हार्वेस्टर को कॉल करने के लिए एर्लैंग का इस्तेमाल किया। इसके बारे में लेख यहाँ: http://www.ddj.com/altect/220600332


4
लेख से पढ़ना: "जबकि हार्वेस्टर मूल रूप से पर्ल में लिखा गया था, एर्लांग के उच्च-स्तरीय संगोष्ठी निर्माण - ओटीपी डिजाइन सिद्धांतों के साथ - यह हार्वेस्टर जैसे विश्वसनीय, दोषपूर्ण सहिष्णु और स्केलेबल अनुप्रयोगों के निर्माण के लिए एक आदर्श मंच बनाते हैं। परिणामस्वरूप सेवा। अधिक स्केलेबल, उपलब्ध, विश्वसनीय और हल्का कोड आधार और कम खर्चीले विकास प्रयासों पर तंग सेवा-स्तरीय समझौतों (SLA) का अनुपालन करने में सक्षम है। " बहुत बहुत धन्यवाद :)
रॉबर्टो एलोई

11

इरांग किसके लिए अच्छा है?

http://beebole.com/en/blog/erlang/why-erlang/

http://www.aquabu.com/2008/2/15/erlang-pragmatic-studio-day-3-notes

http://www.reddit.com/r/programming/comments/9q0lr/erlang_and_highfrequency_trading/ (जीरफ का जवाब)

यह महसूस करना महत्वपूर्ण है कि एर्लैंग के 4 भाग: स्वयं भाषा, VMs (BEAM, hipe) मानक कार्य (github, CEAN, आदि पर प्लस मॉड्यूल) और विकास पर्यावरण लगातार अद्यतन / विस्तारित / सुधारे जा रहे हैं। उदाहरण के लिए, मुझे याद है कि विंग्स 3 डी के लेखक ने महसूस किया कि फ्लोटिंग पॉइंट परफॉरमेंस में सुधार हुआ है, इसे सुधारने की आवश्यकता है (मुझे इसके लिए कोई स्रोत नहीं मिल सकता है)। और इस आदमी ने इसके बारे में लिखा:

http://marian-dan.com/wordpress/?p=324

कुछ साल पहले, टिम ब्रे की वाइड फाइंडर पब्लिसिटी और सभी लोगों ने वेब एप फ्रेमवर्क और HTTP सर्वर लीड करना शुरू किया (कम से कम भाग में) सुधार करने के लिए रेगेक्स और बायनेरी हैंडलिंग। और हायपेज़ और एसएमपी, डायलाइज़र प्रोजेक्ट, कई यूनिट टेस्टिंग और लिबास स्प्रिंगिंग अप का निर्माण करने वाले सभी काम हैं। ।।

तो इसकी मीठी जगह का विस्तार हो रहा है, मुश्किल बात यह है कि आधिकारिक डॉक्स बहुत अच्छी तरह से नहीं रख सकते हैं, और मेलिंग सूची और ब्लागॉस्फेयर वॉल्यूम को जल्दी से बढ़ रहे हैं


10

हम अपने वास्तव में वास्तविक समय ब्राउज़र-आधारित मल्टी-प्लेयर गेम पिक्सज़ा के लिए बैक-एंड मांसपेशियों की शक्ति प्रदान करने के लिए एरलांग का उपयोग कर रहे हैं । हम फ़्लैश या किसी अन्य तृतीय-पक्ष प्लगइन्स का उपयोग नहीं करते हैं, हालांकि यह गेम वास्तविक समय का मल्टी-प्लेयर है। हम इसके बजाय शुद्ध JS और COMET तकनीक का उपयोग करते हैं। और एर्लांग पिक्ज़ा के "वास्तव में वास्तविकता" का समर्थन करता है।


10

मैं wooga के लिए काम कर रहा हूं, एक सामाजिक गेम कंपनी है और हम अपने कुछ गेम बैकेंड (मूल रूप से लाखों दैनिक उपयोगकर्ताओं के लिए http एप) और सहायक सेवाओं जैसे ios पुश नोटिफिकेशन प्रदाता, भुगतान आदि के लिए Erlang का उपयोग करते हैं।

मुझे लगता है कि यह वास्तव में नेटवर्क से संबंधित कार्यों में चमकता है और यह संरचना को सीधे आगे बढ़ाता है और इसमें सरल और जटिल नेटवर्क सेवाओं को लागू करता है। वितरण, दोष सहिष्णुता और प्रदर्शन को प्राप्त करना आसान है, क्योंकि एर्लैंग में पहले से ही कुछ प्रमुख सामग्री निर्मित हैं और इनका उपयोग लंबे समय से महत्वपूर्ण उत्पादन ढांचे में किया जा रहा है। तो इसकी तरह "नई हिप टेक्नोलॉजी चीज़ 0.0.2 अल्फा" नहीं है।

मुझे पता है कि अन्य गेम कंपनियां एर्लैंग का भी उपयोग करती हैं। आपको उस बारे में स्लाइडशेयर पर प्रस्तुतियाँ खोजने में सक्षम होना चाहिए।


6

Erlang अपनी ताकत को एक साझा भाषा के साथ एक कार्यात्मक भाषा होने से आकर्षित करता है। इसलिए IMO, Erlang उन अनुप्रयोगों के लिए उपयुक्त नहीं होगा जिनके लिए मेमोरी मैनीपुलेशन की आवश्यकता होती है। उदाहरण के लिए छवि संपादन।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.