من .Net Framework إلى .Net Core:كيف قللت التكلفة بنسبة 98%

في 2016 اطلقت مايكروسوفت إطار عمل جديد مبني من الصفر بإسم .net core (دوت نيت كور) والهدف منه تحويل إطار العمل الاساسي .net framwork (دوت نيت فريمورك) لبيئة مفتوحة المصدر, متوافقة وداعمة لمختلف الانظمة, خفيفة وقابلة للنقل بسهولة.

خلال السنة الماضية تم اطلاق النسخة الاحدث من إطار العمل الجديد بإسم .net 5 (دوت نيت 5) والتخلص من كلمة core وسيكون اطار العمل هذا هو الاساس الذي يتم تطويره واضافة خصائص جديدة له, وسيتم ايقاف تطوير .net framwork عند الاصدار 4.8 مع دعم تحديثات الامان فقط.

هذا الفرق بين النسختين بشكل عام, لكن ايش علاقة تقليل التكاليف؟ نذكر بعض تفاصيل النسختين بشكل سريع 💨🏃🏻‍♂️

طريقة عمل .Net framwork

هذا الاطار يدعم فقط نظام تشغيل ويندوز, يعني لو برمجت تطبيق او مكتبة برمجية او موقع ويب بهذه البيئة فما تقدر تشغلة إلا في نظام ويندوز أو في سيرفر IIS الخاص بمايكروسوف والي مايشتغل إلا على يندوز 🙃

طريقة عمل .Net 5

هذا الاطار يدعم مختلف الانظمة يعني لو برمجت تطبيق او … تقدر تشغله على لينكس مباشرة وعلى سيرفر Nginx كمثال بدلاً من IIS , وبما انه يدعم لينكس يعني تقدر تشغلة على wait for it ……. دوكر 🤯🎉

تخيل كود c# على سطر أومر bash بشكل رسمي وبدون mono

تقليل التكلفة ؟

السيناريو كالتالي, عندي ويندوز VM شغال على سيرفري R1Land, و تطبيق ويب .net framwork شغال على سيرفر IIS داخل الويندوز.

طبعاً نظام ويندوز يحتاج ضعفين قوة معالجة ويحتاج 4 اضعاف مساحةذاكرة رام على الاقل مقارنة بلينكس وهذي تكلفة عالية على مستوى الهاردوير, ومعروف كمان ان نظام ويندوز مدفوع وهذه تكلفة ثانية مالية. (طبعا مفعلة ب10 ريال من ايباي 🌚)

فالي سويته اني حولت تطبيق الويب من .net framwork إلى .net 5 و قدرت اشغله مباشرة على R1land واستخدمت حاوية دوكر اكيد 🥵 و بدون VM وبدون ويندوز نهائياً, صراحة بعد تشغيل تطبيق ويب asp.net على لينكس جاني شعور غريب كود نظيف وبيئة نظيفة وبسيطة وتسوي كل شي من سطر الاوامر بدون تعقيد.

والحين اعتقد الصورة واضحة بخصوص تقليل التكلفة اي كان نوعها.

لكن هل فعلا قللت التكلفة بنسبة 98 بالمائة؟

الحقيقة ان البيئة عندي بسيطة جداً ومافيها إلا جهاز واحد و مجموعة تطبيقات خفيفة، ما أدري كم بالضبط النسبة لكن الي اقدر اقوله اني وفرت اكثر من 2GB رام لتطبيقات اخرى وقللت الاستخدام على المعالج, لكن تخيل هذا السيناريو (موجود فعلا عند كثير من الجهات) مجموعة كبيرة من سيرفرات ويندوز وليس ويندوز العادي بل نسخة Windows Server الاكثر تكلفة مادية بالاضافة لحزم الدعم السنوية.

وقس على ذلك سيرفرات قواعد البيانات او اي من انظمة البنية التحتية والي تكلف تلك الجهات ملايين الريالات, حقيقة انت ماتقدر تتخلص من هذه التكلفة مباشرة او في فترة وجيزة لكن تقدر تقلل من التكلفة باستخدام انظمة مفتوحة المصدر او ايجاد بديل مناسب (البديل موجود نعم موجود) لكن بعض الجهات مجرد مستهلك وحفنة ملايين لاتهمها 🤷🏻‍♂️

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