b523db2bbea7098aeccea0f78f41f223
     
     
     
    
    
    
    
    
    
    
 
تقنية و أشياء أخرى
تقنية و أشياء أخرى
مختلف المقالات و النقاشات و الروابط المتعلقة بالتقنية او المواضيع العامة
ما هو Horus Plus وهل يشابه NodeJs
                         عربي     English

ما هو Horus Plus وهل يشابه NodeJs

   محمد جمال الذياب        08-02-2020  
   mohammed-alashaal   
فى البدايه عندما بدأت فى عالم ال frameworks لم استخدم اى framework ولكن بدأت افهم الغرض (الرئيسى) لها عموما
بعدها قمت بعمل PHP Pharaoh ثم تغيرت وانشأت Horus Framework وحتى الان موجوده وفى تطور مستمر
عندما بدأت nodejs يتحول اليها العالم بشده مره واحده خصوصا مجتمعنا العربى
وجدت عندها البعض يقارن بينها وبين python وبين php وبالطبع المقارانات خاطئه من الاساس
لان فى python يوجد tornado لذا فكان من الافضل المقارنه بينها وبين tornado وليست لغه بالكامل !
اما عن php المطورون يتحدثون عنها كانها فى التسعينات ولا يعرفون ما وصلت اليه من مستوى
لكن للاسف التعامل معها مجرد تعامل مع قشور php فعندما تقارن بين nodejs وبين php التى تستخدمها تحت apache فانت تقارن مقارنه خاطئه
لان فى nodejs انت تتعامل مع ال client مباشره بدون اى وسيط اما عن php تحت apache فأنت تتعامل مع mod_php وليست php بالكامل
وكل من تعرف على بنية apache وكيفية عمل mod_php سيعلم انها فى هذا الزمن اصبحت كالجحيم والا لكان تم الاعتماد عليها فى كبرى المواقع
ذلك لان apache يقوم بفتح thread جديده لكل اتصال .. تخيل ان هناك مليون اتصال .. ؟
لذلك ظهرت php fastcgi .. لكن سألت لما لا يوجد مثل nodejs فى php
وطبعا الاجابه ع الويب كله واضحه واجابه روتينيه محفوظه يتم ترديدها فقط
لا تخلوا لغه من العيوب ولكنها ليست كلها مشاكل ! فالمشكله فى كيف تستخدمها انت وليست كيف يستخدمها غيرك !
طبعا المشاكل المعروفه هى

non-blocking & asynchronous

لكن المشكله انه مافيش مشكله لان الحلول موجوده "ببحث بسيط"
كل المطلوب هو عمل main loop يتحكم فى كل مايحدث
وهو مابدأت به بعد فهم كيفية عمل nodejs و tornado
وبالفعل بدأته وانهيته لأول مره وجربته وكانت النتائج جيده ..
وبعد فتره بعد ان اردت ان اقوم ببعض التحسينات اضفت الدعم لمكتبة libevent
مكتبه خاصه بنظام التشغيل ولها extension ل php
واصبح النظام الخاص بنا Plus يعتمد عليها "اذا كانت متاحه"
اما اذا كانت غير متاحه فهناك implementation مشابه لفكرة عملها يتم استخدامه وايضا النتائج جيده جدا
بعد نشر اول اصدار منها كان هناك الدهشه ومن شهر الاسئله التى سألت بها

هل يعمل بدون apache

هل هى non-blocking

هل هى single thread


هذا لانها تعتبر شئ غير اعتيادى فى اللغه فانت تعودت على انها مجرد سكربت يعمل تحت بيئه اخرى
ولكنك لم تجرب ان تشغل عقلك
الان هى فى الاصدار ال 1.0.1 بعد ان تم اضافة HTTPD وهى مكتبه خاصه بالتعامل مع HTTP وهى اختصار HTTP Daemon
ومن الخطوات القادمه (دمج Horus Framework العاديه مع Horus Plus)
لكى يكون الناتج Framework ايضا فى ملف واحد منظم جدا يعمل اما مستقل بذاته كـــ Nodejs + ExpressJs أو يعمل بالطريقه التقليديه
تحت اى Webserver عادى كــ apache وغيره


التوثيق من هنا: http://alash3al.github.io/Plus

اما ال Repo من هنا: https://github.com/alash3al/Plus

التعليقات
   urorbit - Bassam alEssawi   
فكرة جميله , هل يوجد فيديوهات للأمثله ؟ إذا لم يوجد فأنصحك بإنشاء مثال أو إثنين لتوضيح الفكرة فكما تعلم كثير منا لديه الوقت محصور وضيق والكثير من المطورين ﻻيعلمون مدى فائدة هذا السكريبت أو الأداه وعند مشاهدة أمثله يكون الشرح أقرب بكثير من كتابة المصطلحات العلميه ... سأقوم بالتجربة ولي عودة بإذن الله للنقاش :)
بالتوفيق أخي
   khashabawy - عبدالله خشبة   
بأمانة شغل عالى أوى .. أنا لم أصل لربع مستواك فى البرمجة .. أتمنى لك التوفيق و السداد
  الموضوع و التعليقات و باقي البيانات في هذه الصفحة منقولة و معدلة من المصدر على الرابط التالي : https://io.hsoub.com/webdev/20829
  هذا الموضوع مرخص تحت : رخصة المشاع الإبداعي BY-SA
المشاركة :
تويتر
فيسبوك
الإيميل
لينكد إن
واتساب
الرابط

لفظ \"مائة\" كيف يكتب؟ مئة أو مأة أو كما كتبتُ مائة. لفظ \"مائة\" كيف يكتب؟ مئة أو مأة أو كما كتبتُ مائة.
حمّـى مسلسل West World الجديد .. ما الموضوع ؟ حمّـى مسلسل West World الجديد .. ما الموضوع ؟
أنا أنمار فتح الدين مؤسس مشارك في يوتيرن / نادي جدة للكوميديا / هايپ للخدمات الرقمية / منصة لمة جدة للأنشطة الترفيهية أنا أنمار فتح الدين مؤسس مشارك في يوتيرن / نادي جدة للكوميديا / هايپ للخدمات الرقمية / منصة لمة جدة للأنشطة الترفيهية
هل تتذكر عندما كتبت برنامجك الاول hello world هل تتذكر عندما كتبت برنامجك الاول hello world
تايب ستيج: منصة عربية لخطوط الويب تايب ستيج: منصة عربية لخطوط الويب
هل قمت بتجربة موقع www.coursera.org للتعليم عن بعد من قبل ؟ هل قمت بتجربة موقع www.coursera.org للتعليم عن بعد من قبل ؟
دروس على الجزائريين أن يتعلموها من إنقطاع كابل الإنترنت SEA-ME-WE 4 دروس على الجزائريين أن يتعلموها من إنقطاع كابل الإنترنت SEA-ME-WE 4

gg gg
مراجعات - تقييمات - فديوها - مقالات و مختلف المواضيع التي تهم اللاعبين العرب
http://gg.leomara.com/
الروابط المختصرة    سياسة الخصوصية    شروط الإستخدام    من أنا    من نحن    الأسئلة الشائعة    موضوع عشوائي    اتصل بنا   
                           
Developed by : MJ7.org