الصفحة الرئيسية » تصميم المواقع » يعني مقابل LAMP المكدس إيجابيات وسلبيات

    يعني مقابل LAMP المكدس إيجابيات وسلبيات

    كدسات الويب تطورت على مدى عقود مع التقدم في التكنولوجيا واللغات الخلفية. حاليًا أكثر مكدسات الويب شيوعًا هما LAMP و MEAN. يعتمدون على تقنيتين مختلفتين للغات الخلفية وقواعد البيانات وبيئات الخوادم. يشير المصطلح "مكدس" إلى التقنيات التي تكدس فوق بعضها البعض من أجل خلق بيئة خادم الويب.

    في هذه المقالة ، أود أن أوضح هاتين المجموعتين على شبكة الإنترنت من خلال النظر في خيارات التكنولوجيا الخاصة بهم ، سواء إيجابيات وسلبيات. أين تتفوق كل كومة؟ وما هي أنواع المشاريع التي ستستفيد أكثر من أي خيار؟ إذا كنت جديدًا على تقنيات الويب أو ترغب فقط في التعرف على هاتين المجموعتين ، فإن هذا الدليل يحتوي على كل ما تحتاجه.

    تطوير المصباح التقليدي

    يجب أن يعرف معظم المطورين عن مكدس LAMP التقليدي لأنه موجود منذ بداية الويب. مصباح تمثل لينكس ، اباتشي ، الخلية و PHP. كل واحدة منها عبارة عن حزم برامج فردية يتم دمجها لتشكيل حل خادم متعدد الاستخدامات.

    أكبر سبب لعصا مع LAMP هو الأمن والدعم على نطاق واسع. لقد كانت موجودة منذ عقود ، وهي طريقة مجربة لاستضافة المواقع.

    جميع التكنولوجيا الخلفية مثل PHP و MySQL معروفة جيدا ، و مدعوم من قبل كل مزود استضافة كبير. إذا كنت تعمل على مكدس LAMP ، يمكنك استضافة أي مكان في الأساس. بالإضافة إلى ذلك ، تحصل عليه الوصول إلى محركات CMS الأكثر شعبية. يعمل كل من WordPress و Drupal و Joomla على PHP / MySQL.

    هناك خيارات قابلة للتخصيص داخل بنية LAMP مثل LEMP استبدال Apache بـ nginx. يمكنك أيضًا تشغيل متغير على خادم Windows كمكدس WAMP.

    ومع ذلك ، فإن جميع البرامج الأساسية - بما في ذلك Apache و MySQL و PHP - كانت مفتوحة المصدر, وجعلت في المقام الأول لينكس. هذا هو السبب الذي يجعل نظام Linux أكثر منطقية لبيئة الخادم ، ولهذا السبب صمد LAMP في اختبار الزمن لتطوير الويب الحديث.

    يذهب معظم المطورين إلى هذا المسار لأنه أبسط طريقة للحصول على موقع على شبكة الإنترنت. ستجد الكثير من الدعم في المنتديات التي تغطي كل ما تحتاجه لتكوين واستكشاف الأخطاء وإصلاحها بيئة LAMP. على سبيل المثال ، يمكنك التحقق من سؤال ServerFault هذا لمزيد من المعلومات.

    جافا سكريبت الخلفية مع مين

    Node.js هي أحدث تقنية للمطورين مصممة على تشغيل تطبيقات قابلة للتطوير تم إنشاؤها باستخدام JavaScript. العقدة القوى المكدس يعني, ويوفر ميزة أساسية: كل شيء يعمل على لغة واحدة.

    تعني تمثل MongoDB ، Express.js ، Angular.js, وبالطبع نود.جي إس. لا يضع هذا الاختصار أي متطلبات لنظام تشغيل الخادم أو برنامج الخادم. كومة يعني يمكن أن تعمل على أي نظام تشغيل, و Node يأتي حتى مع خادمه الخاص للتعامل مع JS على الواجهة الخلفية.

    ستجد الكثير من الوثائق والدعم على موقع Mean.io.

    على الرغم من أن هذه المجموعة قد حظيت بالكثير من الاهتمام ، إلا أنها لا تزال غير موجودة في أي مكان بالقرب من مستوى الدعم الثابت كمكدس LAMP تقليدي.

    فلماذا يذهب أي شخص مع يعني؟ لأنه في نهاية المطاف أسرع و أسهل في القياس. MongoDB هو قاعدة بيانات NoSQL مما يحسن الاستفسارات. يحسّن استخدام جافا سكريبت fullstack أيضًا التطوير لأن لغة واحدة تنطبق على جميع أعمال الواجهة الأمامية والخلفية.

    بالإضافة إلى العديد من الأطر JS الأخرى هي ضرب السوق كحلول مستقرة. على سبيل المثال ، يمكن تبديل MEAN إلى a مين المكدس استبدال الزاوي مع Ember.

    سوف المبرمجين أحب المكدس يعني لأنه يفصل بين رمز للصيانة والنمو. هذا يجعلها أسهل في تنظيم تطبيقات الويب JavaScript حتى يتم تشغيلها في بيئة طبيعية.

    هناك الكثير لنتعلمه حول هذا الموضوع ، وربما يكون هذا هو أكبر عائق أمام المطورين الجدد. قد يستغرق تعلم جميع التقنيات اللازمة لإدارة تطبيق MEAN عدة أشهر. ولكن إذا كنت تحب Node ، وترغب في تشغيل كل شيء على JavaScript ، فهذا يستحق كل هذا الجهد.

    إليك بعض البرامج التعليمية للمبتدئين لتبدأ بها.

    • دليل المبتدئين المطلق إلى Node.js
    • فيليكس Node.js دليل المبتدئين
    • مقدمة إلى Express.js
    • تعلم كيفية بناء تطبيقات الويب الحديثة مع يعني
    • الشروع في العمل مع Node.js و Express و MongoDB

    PHP مقابل العقدة

    كانت لغة PHP موجودة منذ منتصف التسعينيات ، وهي حقًا اللغة الأكثر شعبية في الواجهة الخلفية. يبدأ العديد من مطوري الويب بـ (أو يتعلمون في النهاية) PHP لأنه غالب جدًا عبر منصات الويب وموفري الاستضافة.

    العقدة هي إطار أحدث ولكن شعبيتها ارتفعت بسرعة غير عادية. يتضمن ذلك شعبية NPM كمدير حزم لمطوري الويب ، ويتوسع أكثر في أطر عمل الواجهة الأمامية القوية مثل Angular 2.

    فائدة أخرى من العقدة هي أنه يأتي مع خادم الويب الخاص به. جافا سكريبت هي أساس كل شيء في حزمة مكدس MEAN ، لذلك إذا كنت تحب JS ، فأنت حقًا تحب إنشاء تطبيقات الويب لـ MEAN.

    يشعر العديد من المطورين أن لغة PHP هي لغة سيئة التصميم لأن المنشئ, Rasmus Lerdorf لم يصممها كلغة. بدأت PHP ك حل عام للمواقع, ونمت بسرعة إلى مكتبة كبيرة من وظائف لا علاقة لها.

    ولكن مع محاولة PHP 7 إصلاح العديد من أخطاء اللغة ، ومجانيًا OOP الأطر ، مثل Laravel ، PHP هي لغة أفضل بكثير الآن من أي وقت مضى.

    الصورة: Stackoverflow

    لذلك فإن النقاش حول اللغة يأتي إلى اختيارك الشخصي. هل حقا تحب كتابة جافا سكريبت؟ ثم قد العقدة مع كومة يعني يستحق النظر.

    إذا كنت تعرف PHP بالفعل ، وتريد التمسك بما تعرفه ، فإن LAMP هو طريق قابل للتطبيق أيضًا.

    إيجابيات وسلبيات عموما:

    هناك طبقات متعددة من كل مكدس ويب للمقارنة ، بما في ذلك نظام التشغيل ، برنامج الخادم ، قاعدة البيانات ، ولغة الخلفية.

    (1) ال يعني المكدس أيضا يتضمن الزاوي وهو إطار الواجهة الأمامية. لا يوجد أي إطار مطلوب في مكدس LAMP ، ولكن يمكنك دائمًا إضافة إطارك الخاص إلى أي تطبيق تقوم بإنشائه.

    (2) فيما يتعلق بنظام التشغيل ، يبحث مكدس LAMP عن مشتق من Linux. لينكس هو الخيار الافضل عادة لبيئة الخادم بغض النظر عن المكدس ، وهذا صحيح من يعني أيضا.

    (3) الآن نظام التشغيل الخاص بالخادم هو مجرد برنامج كمبيوتر ، لكنه ليس هو برنامج خادم الويب. للحصول على هذا ، تحتاج إلى برنامج مثل Apache أو nginx. يستخدم LAMP Apache لأنه أحد أكثر الخيارات المتاحة استقرارًا.

    (4) يعني يستخدم خادم Node.js الذي هو جزء من حزمة العقدة. لا يزال الأمر جديدًا إلى حد ما ، وعلى الرغم من وجود الكثير من الدعم هناك ، فإن Node ليس لديها أي مكان بالقرب من نفس حجم مجتمع Apache.

    (5) يتطلب خادم عقدة أيضا خلفية جافا سكريبت (بدون ملحقات). أباتشي يسمح لمعظم اللغات الخلفية, وهناك العديد من الامتدادات المجانية لمزيد من الدعم. ولكن حتى الآن لا يوجد لدى Apache أي شيء لدعم Node.

    (6) إدارة قاعدة البيانات هو المكان الذي ستجده أكبر الفرق. يستخدم LAMP MySQL لتخزين البيانات العلائقية ، بينما يستخدم MEAN MongoDB وهي قاعدة بيانات غير علائقية. DBs غير العلائقية هي أسرع بكثير, وتوفير طريقة أسهل للتحجيم مع ارتفاع حركة المرور.

    (7) لا تنسى لا يقتصر PHP فقط على MySQL. يمكن استخدام MongoDB والبدائل الأخرى مثل PostgreSQL أو SQLite. إن معظم مطوري PHP يعرفون MySQL ، لذلك فهو المنافس الرئيسي لمكدس LAMP نموذجي.

    (8) يعني مداخن عادة أركض بشكل أسرع و نطاق أكبر, ولكن تتطلب الكثير من الوقت والمعرفة الخادم لمعرفة النظام. مداخن LAMP هي مجربة وصحيحة, ويأتون خارج الصندوق مع البنية التحتية الأكثر أمانا وأوسع دعم يمكن تخيله.

    (9) تحدث لغات البرمجة فرقًا كبيرًا بين المجموعتين. يعمل LAMP بشكل أساسي على PHP والذي يتضمن WordPress وإطار Laravel. يعمل MEAN على ExpressJS / NodeJS للجهة الخلفية مع AngularJS على الواجهة الأمامية.

    (10) يعني هو JavaScript مكدس كامل, وهناك الكثير سوف تحتاج إلى تعلم كيفية تشغيله. انه الاختيار المتكرر للشركات الناشئة الجديدة على استعداد لدفع الحدود في تطوير تطبيقات الويب. LAMP هو أكثر تقليدية مع شبيبة على الواجهة الأمامية ، PHP على الواجهة الخلفية. انها مصنوعة للأشخاص الذين يريدون فقط الحصول على المواقع على شبكة الإنترنت دون الكثير من المخاوف.

    يرجى مراجعة دليل المقارنة هذا لمعرفة المزيد. لا خيار صواب أو خطأ ، مختلف تمامًا عن المشروعات المختلفة.

    تغليف

    أود أن أقول إن معظم مواقع الويب تميل إلى مجموعة LAMP لأنها مختبرة ، ولديها الكثير من سلاسل Q&A المفيدة المفهرسة في Google. ما زال ينمو ويحظى أيضًا بدعم كبير ، ولكن قد يكون أكثر تقنية مما يريد معظم الناس التعامل معه.

    لا تتردد في تجربة كليهما ، ورؤيته بنفسك. من الممكن أن تثبيت كل الاجهزة محليا على جهاز الكمبيوتر الخاص بك ، والبناء عليها دون خادم بعيد.

    وإذا كنت تبحث عن مزيد من المعلومات على أي مكدس ، فقد جمعت مجموعة من الروابط المفيدة أدناه.

    • تعلم كيفية بناء تطبيقات الويب الحديثة مع يعني (thinkster.io)
    • عامل الميناء LAMP Stack Admin (jessesnet.com)
    • كيفية تثبيت Linux و Apache و MySQL و PHP (LAMP) على حزمة دبيان 8 (digitalocean.com)