مالسبب في ظهور الmicroservises أو أنظمة الcontainers كdocker أو أنظمة إدارة الحاويات كKubernetes؟
في هذه السلسلة لمحة تاريخية عن بناء و برمجة الأنظمة و الأسباب التي استدعت ظهور هذه التقنيات تباعا و هو ملخص - بتصرف- لمقالة جميلة جدا:
https://t.co/98D2u4fNNF
#برمجة #حزب_المبرمجين https://t.co/U1jzSY2rlC
في الماضي.. كانت طريقة بناء الأنظمة يعتمد على بنائها كوحدة واحدة (monolithic) أي أن المشروع بكامل أجزائه يطور في كود واحد و يتم إطلاقه و رفعه كاملا كوحدة واحدة. بالإضافة لذلك فإن النظام يتم استضافته داخليا في الشركات (on-premises) و يكون متاحا داخل الشركة أو المنظمة فقط
تلك الأنظمة كانت أنظمة صغيرة تؤدي مهام بسيطة كالمحاسبة و غيرها و كان يتم تحديد الطاقة الاستيعابية لهذه الأنظمة قبل بنائها حتى يتم تزويد النظام بالموارد اللازمة لتحمل ضغط الاستخدام لحد معين و حسب الغرض.
و مع بداية الألفية الجديدة أصبحت المتطلبات أكثر تعقيدا و الحاجة تزداد لأنظمة أكبر و تدعم ميزات أكثر بالإضافة لتوفرها على مدار الساعة-high availability- في أي زمان و من أي مكان و من هنا انطلقت مرحلة جديدة في بناء هذه الأنظمة و هي تطبيقات الويب أو الweb apps
و كون هذه الأنظمة متاحة في أي وقت و لمجموعة كبيرة من المستخدمين غالبا يصعب تقدير عددهم فلم يكن تحديد الطاقة الاستيعابية-workload- بالأمر السهل، بل إن الطاقة الاستيعابية كانت يجب أن تكون متغيرة حسب تغير عدد المستخدمين و الضغط على النظام على مدار الساعة.