DevOps بالعربي
مقالات عملية مرتبة حسب المجال والمستوى، اختر المجال المناسب واقرأ من مستوى مبتدئ إلى محترف.
ليه بيطلعلك FATAL: too many clients؟ وحلّها بـ PgBouncer
اتصالات PostgreSQL بتقع بخطأ too many clients تحت الحِمل؟ المشكلة مش في السيرفر. اعرف ليه كل اتصال غالي، وإزاي PgBouncer بوضع transaction يخدم آلاف العملاء بعشرين اتصال خلفي، مع pgbouncer.ini جاهز، أرقام، trade-offs، ومتى لا تستخدمه، مع مصادر رسمية.
صورة Docker بتاعتك 850 ميجا؟ نزّلها لـ 18 ميجا بالـ Multi-Stage Build
لو صورة Docker بتاعتك بتتجاوز مئات الميجابايت، النشر بيبطأ وسطح الهجوم بيكبر. المقال للمتوسط يشرح ليه الصور بتتضخّم بمثال بسيط ثم علميًا، وإزاي الـ Multi-Stage Build وترتيب الطبقات ينزّلوا صورة Go من ~850 لـ ~18 ميجا، بـ Dockerfile قابل للنسخ، أرقام مقاسة، الـ trade-offs، ومتى لا تستخدمه، مع مصادر رسمية.
الإغلاق الرشيق: ليه كل نشر بيقطع طلبات مستخدمينك وإزاي توقفه
لو كل deploy بيرجّع أخطاء 503 لثوانٍ، المشكلة إن العملية بتموت قبل ما تخلّص طلباتها. دليل للمحترف يبني إغلاقًا رشيقًا بـ SIGTERM وpreStop في Kubernetes ينزّل الطلبات المقطوعة إلى صفر، بكود Node.js وGo وYAML شغّال وأرقام ومصادر رسمية.
متوسط زمن الاستجابة بيكذب: قيس p95 وp99 صح بالـ Histogram
المتوسط ممكن يقول إن زمن استجابتك 91 مللي ثانية، بينما 5% من مستخدميك بيستنوا أكتر من 210. المقال يشرح ليه المتوسط بيخبّي أبطأ المستخدمين، وإزاي تقيس p95 وp99 صح بـ Prometheus Histogram وPromQL، بمثال وكود وأرقام ومصادر رسمية.
systemd للمبتدئ: خلّي خدمتك ترجع لوحدها بعد أي كراش أو reboot
لو بتشغّل تطبيقك بـ node app.js وبيفضل واقع بعد أي reboot أو كراش، systemd بيرجّعه لوحده في أقل من ثانية. شرح للمبتدئ بمثال بسيط ثم علميًا، مع ملف خدمة كامل وأوامر جاهزة، أرقام، مقايضات، ومتى لا تستخدمه، مع مصادر رسمية.
البنية التحتية ككود بـ Terraform: وقّف ضبط السيرفرات بإيدك
ضبط السيرفرات يدويًا من الكونسول بطيء وبيتكرر بأخطاء. Terraform بيخلّيك تكتب بنيتك في ملف واحد وتعيد إنشاءها بنفس النتيجة في أقل من دقيقتين. شرح للمتوسط بمثال بسيط ثم علميًا، مع كود HCL وأوامر شغّالة، أرقام، الفرق بين plan وapply، الـ state، trade-offs، ومتى لا تستخدمه، مع مصادر رسمية.
الـ CPU Throttling في Kubernetes: ليه خدمتك بطيئة والمعالِج نصّه فاضي
خدمتك بطيئة والـ CPU utilization على العقدة منخفض؟ المشكلة غالبًا في حدّ المعالج اللي بيتحوّل لحصّة CFS تخنق التطبيق. شرح للمحترف بمثال بسيط ثم علميًا، مع أوامر قياس النسبة، الحل بأرقام، الـ trade-offs، ومتى لا تستخدمه، مع مصادر رسمية.
ليه تشغيل حاوية Docker كـ root خطر، وإزاي تشغّلها كمستخدم عادي
أغلب صور Docker بتشتغل كـ root افتراضيًا، وده معناه إن ثغرة واحدة ممكن توصل لسيرفرك كله. سطرين في الـ Dockerfile بيحوّلوا الحاوية لمستخدم عادي ويحصروا أي اختراق جوّاها. شرح بمثال بسيط، كود جاهز للـ Dockerfile وKubernetes، طريقة تحقق، والـ trade-offs، مع مصادر رسمية.
مفاتيح التكرار (Idempotency Keys): أعِد المحاولة على الدفع بأمان بلا خصم مزدوج
لو الشبكة قطعت الرد وتطبيقك أعاد إرسال طلب الدفع، ممكن تخصم من العميل مرتين. مفتاح التكرار بيخلّي أي طلب POST يتنفّذ مرة واحدة مهما تكرر، بمثال بسيط ثم شرح علمي، مع كود PostgreSQL شغّال، أرقام، trade-offs، ومتى لا تستخدمه، مع مصادر رسمية.