check_post_to_show: string(2061) "{"is_valid":1,"global_remaining_posts_to_view":0,"remaining_posts_to_view":0,"number_all_post":0,"number_post_read":0,"exceeded_daily_limit":0,"is_watched_before":0,"user_agent":"CCBot\/2.0 (https:\/\/commoncrawl.org\/faq\/)","user_ip":"44.212.96.86","user_header":{"SERVER_SOFTWARE":"Apache\/2.4.52 (Debian)","REQUEST_URI":"\/technodad\/%D9%84%D8%BA%D8%A9-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9-%D8%A5%D9%8A%D8%B1%D9%84%D8%A7%D9%86%D8%BA\/","REDIRECT_STATUS":"200","HTTP_X_FORWARDED_PROTO":"https","HTTP_CONNECTION":"upgrade","HTTP_HOST":"technologyreview.ae","HTTP_CDN_LOOP":"cloudflare","HTTP_CF_IPCOUNTRY":"US","HTTP_ACCEPT_ENCODING":"gzip","HTTP_CF_RAY":"8308cf621af61ff8-IAD","HTTP_CF_VISITOR":"{\\\"scheme\\\":\\\"https\\\"}","HTTP_USER_AGENT":"CCBot\/2.0 (https:\/\/commoncrawl.org\/faq\/)","HTTP_ACCEPT":"text\/html,application\/xhtml+xml,application\/xml;q=0.9,*\/*;q=0.8","HTTP_ACCEPT_LANGUAGE":"en-US,en;q=0.5","HTTP_CF_CONNECTING_IP":"44.212.96.86","PATH":"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin","SERVER_SIGNATURE":"Apache\/2.4.52 (Debian) Server at technologyreview.ae Port 80<\/address>","SERVER_NAME":"technologyreview.ae","SERVER_ADDR":"172.18.0.17","SERVER_PORT":"80","REMOTE_ADDR":"44.212.96.86","DOCUMENT_ROOT":"\/var\/www\/html","REQUEST_SCHEME":"http","CONTEXT_PREFIX":null,"CONTEXT_DOCUMENT_ROOT":"\/var\/www\/html","SERVER_ADMIN":"webmaster@localhost","SCRIPT_FILENAME":"\/var\/www\/html\/index.php","REMOTE_PORT":"57838","REDIRECT_URL":"\/technodad\/\u0644\u063a\u0629-\u0627\u0644\u0628\u0631\u0645\u062c\u0629-\u0625\u064a\u0631\u0644\u0627\u0646\u063a\/","GATEWAY_INTERFACE":"CGI\/1.1","SERVER_PROTOCOL":"HTTP\/1.1","REQUEST_METHOD":"GET","QUERY_STRING":null,"SCRIPT_NAME":"\/index.php","PHP_SELF":"\/index.php","REQUEST_TIME_FLOAT":1701742828.096027,"REQUEST_TIME":1701742828,"argv":[],"argc":0,"HTTPS":"on"},"content_user_category":"paid","content_cookies":{"status":0,"sso":{"content_id":46844,"client_id":"1d1883f4-87d0-4156-8903-e6ceb0cb4224"},"count_read":null},"is_agent_bot":1}"
هي لغة برمجة وظيفية مفتوحة المصدر، موجَّهة للأغراض العامة، تهدف إلى بناء أنظمة قابلة للتطوير ومتزامنة بشكلٍ جيد، إضافة إلى قابلية التوسعة.
تاريخ لغة البرمجة إيرلانغ
طوّر روبرت فيردينغ وجو أرمسترونغ ومايك ويليامز لغة البرمجة إيرلانغ عام 1986 في شركة أريكسون بهدف بناء أنظمة اتصالات لاسلكية متاحة طوال الوقت ومتزامنة بشكلٍ جيد. وفي عام 1998، أصبحت لغة برمجة مفتوحة المصدر. تم استيحاء إيرلانغ من لغات برمجة متزامنة مثل لغة برمجة آدا Ada وشيل Chill إضافة للغة البرمجة المنطقية برولوغ.
لماذا تستخدم لغة البرمجة إيرلانغ؟
هناك أسباب مختلفة تجعل إيرلانغ خياراً جيداً لبناء الأنظمة الموزعة:
تم تصميم إيرلانغ للتعامل مع الأخطاء برشاقة، إذ أن لديها آلية مدمجة لإدارة الأخطاء تسمى "المشرفين"، بحيث يمكنه اكتشاف الأخطاء وتصحيحها تلقائياً، ما يجعلها مثالية لبناء أنظمة متاحة للاستخدام وموثوقة.
صُمِمت إيرلانغ لتكون متزامنة للغاية بحيث يمكنها معالجة عدد كبير من الطلبات والعمليات الحسابية في وقت واحد، ما يجعلها مثالية لأنظمة البناء التي تحتاج إلى التوسع للتعامل مع كميات كبيرة من حركة المرور.
تم تطوير إيرلانغ للأنظمة منخفضة زمن الاستجابة وعالية الإنتاجية، ما يسمح بالتعامل مع عددٍ كبير من العمليات المتزامنة دون تكبد خسائر كبيرة في الأداء.
تحتوي إيرلانغ على آلية مدمجة لتمرير الرسائل، إذ تسمح للعمليات بالتواصل مع بعضها بعضاً بسرعة وكفاءة، ما يجعل من السهل بناء أنظمة موزعة تحتاج إلى تبادل البيانات بين العقد.
أمثلة على استخدامات لغة البرمجة إيرلانغ
تستخدم لغة البرمجة إيرلانغ بكثرة من حولنا، إليك أبرز التطبيقات:
تطبيقات الدردشة: تستخدم تطبيقات المراسلة مثل تطبيق وي تشات (WeChat) وإيرلانغ(Erlang) و واتساب (WhatsApp) للتعامل مع كميات كبيرة من المستخدمين مع متطلبات مزامنة عالية.
أنظمة طابور الرسائل: يعد RabbitMQ، وسيط رسائل مفتوح المصدر تم تطويره بواسطة إيرلانغ بحيث يسمح بتنفيذ بروتوكول طابور الرسائل المتقدم وبروتوكولات أخرى.
البلوك تشين: تستخدم منصة ايترنتي (Aeternity) للبلوك تشين إيرلانغ للتطبيقات اللامركزية للتواصل بين العقد وتحقيق ميزة الأمان وقابلية التطوير.
المعالجة الثنائية: تدعم إيرلانغ التنفيذ السريع للبروتوكولات الثنائية لأغراض الاتصالات.
هي لغة برمجة وظيفية مفتوحة المصدر، موجَّهة للأغراض العامة، تهدف إلى بناء أنظمة قابلة للتطوير ومتزامنة بشكلٍ جيد، إضافة إلى قابلية التوسعة.
تاريخ لغة البرمجة إيرلانغ
طوّر روبرت فيردينغ وجو أرمسترونغ ومايك ويليامز لغة البرمجة إيرلانغ عام 1986 في شركة أريكسون بهدف بناء أنظمة اتصالات لاسلكية متاحة طوال الوقت ومتزامنة بشكلٍ جيد. وفي عام 1998، أصبحت لغة برمجة مفتوحة المصدر. تم استيحاء إيرلانغ من لغات برمجة متزامنة مثل لغة برمجة آدا Ada وشيل Chill إضافة للغة البرمجة المنطقية برولوغ.
لماذا تستخدم لغة البرمجة إيرلانغ؟
هناك أسباب مختلفة تجعل إيرلانغ خياراً جيداً لبناء الأنظمة الموزعة:
تم تصميم إيرلانغ للتعامل مع الأخطاء برشاقة، إذ أن لديها آلية مدمجة لإدارة الأخطاء تسمى "المشرفين"، بحيث يمكنه اكتشاف الأخطاء وتصحيحها تلقائياً، ما يجعلها مثالية لبناء أنظمة متاحة للاستخدام وموثوقة.
صُمِمت إيرلانغ لتكون متزامنة للغاية بحيث يمكنها معالجة عدد كبير من الطلبات والعمليات الحسابية في وقت واحد، ما يجعلها مثالية لأنظمة البناء التي تحتاج إلى التوسع للتعامل مع كميات كبيرة من حركة المرور.
تم تطوير إيرلانغ للأنظمة منخفضة زمن الاستجابة وعالية الإنتاجية، ما يسمح بالتعامل مع عددٍ كبير من العمليات المتزامنة دون تكبد خسائر كبيرة في الأداء.
تحتوي إيرلانغ على آلية مدمجة لتمرير الرسائل، إذ تسمح للعمليات بالتواصل مع بعضها بعضاً بسرعة وكفاءة، ما يجعل من السهل بناء أنظمة موزعة تحتاج إلى تبادل البيانات بين العقد.
أمثلة على استخدامات لغة البرمجة إيرلانغ
تستخدم لغة البرمجة إيرلانغ بكثرة من حولنا، إليك أبرز التطبيقات:
تطبيقات الدردشة: تستخدم تطبيقات المراسلة مثل تطبيق وي تشات (WeChat) وإيرلانغ(Erlang) و واتساب (WhatsApp) للتعامل مع كميات كبيرة من المستخدمين مع متطلبات مزامنة عالية.
أنظمة طابور الرسائل: يعد RabbitMQ، وسيط رسائل مفتوح المصدر تم تطويره بواسطة إيرلانغ بحيث يسمح بتنفيذ بروتوكول طابور الرسائل المتقدم وبروتوكولات أخرى.
البلوك تشين: تستخدم منصة ايترنتي (Aeternity) للبلوك تشين إيرلانغ للتطبيقات اللامركزية للتواصل بين العقد وتحقيق ميزة الأمان وقابلية التطوير.
المعالجة الثنائية: تدعم إيرلانغ التنفيذ السريع للبروتوكولات الثنائية لأغراض الاتصالات.
نستخدم ملفات تعريف الارتباط لتحسين تجربتك، استمرار استخدامك للموقع يعني موافقتك على ذلك. سياسة الخصوصيةأوافقX
Privacy & Cookies Policy
Privacy Overview
This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.