- Joe Armstrong द्वारा लिखा गया लेख, जिसमें Erlang कम्युनिटी की एक प्रसिद्ध शख्सियत अपने सबसे पसंदीदा Erlang प्रोग्राम पर चर्चा करते हैं
- यह प्रोग्राम "Universal Server" है, जो server की अवधारणा को सामान्यीकृत करता है और ऐसा server बनाने का विचार प्रस्तुत करता है जिसे निर्देश देकर किसी खास server में बदला जा सके
- Universal Server
{become, F} संदेश की प्रतीक्षा करता है, और जब F एक function होता है, तो वह F server बन जाता है
- Armstrong "Factorial Server" प्रस्तुत करते हैं, जो किसी integer की प्रतीक्षा करता है और उस integer का factorial लौटाता है
- वह एक ऐसा function बनाना दिखाते हैं जो universal server तैयार करता है, फिर उसे "factorial server बनो" संदेश भेजता है, integer भेजता है, response का इंतज़ार करता है, और response को प्रिंट करता है
- वह SICS में बिताए समय का एक प्रसंग साझा करते हैं, जहाँ उन्हें Planet Lab तक पहुँच मिली थी, जो 9000 computers से बना एक research network था
- उन्होंने Planet Lab को distributed applications के लिए एक वास्तविक test bed की तरह इस्तेमाल किया, सभी Planet Lab machines पर खाली universal Erlang server इंस्टॉल किए, और
become संदेश के साथ network को flood करने वाला gossip algorithm सेट किया
- इससे वे बहुत तेजी से network को अपनी इच्छा के अनुसार बदल सकते थे, और इसका उपयोग उन्होंने एक research paper के लिए content delivery network बनाने में किया
- यह लेख dynamic और distributed systems बनाने में Erlang की flexibility और power को दिखाता है
1 टिप्पणियां
Hacker News राय
{becom, F}messages प्राप्त कर सकता है, जिससे server लगातार विकसित होता रह सकता है