Ahmed Ayyad

أهلاً بك،

أحمد عياد

مطوّر بايثون وأنظمة — أكتب وأطوّر أدوات مفتوحة المصدر

مين أنا باختصار

أنا أحمد، بشتغل بالبايثون بقالي سنين، وأغلب شغلي باك إند: خدمات FastAPI، بوتات تيليجرام، وأدوات صغيرة مبنية على Redis.

أكتب عن أشياء طبّقتها بنفسي في مشاريع حقيقية: توحيد الكود، توضيح الأخطاء، التزامن، النشر على خوادم لينكس، والأدوات التي بنيتها وفتحت مصدرها. لا أكتب عن الذكاء الاصطناعي ولا محتوى مكرر؛ المكتوب هنا مبني على تجربة ونقاش صريح للعيوب.

أحدث المقالات

هجرات قواعد البيانات بدون توقف عبر Alembic

تقنيات وتطبيق DatabaseAlembicPostgreSQLDevOps

كيف تنفذ تعديلات الجداول في PostgreSQL بدون حجز الأقفال وتوقف الخدمة: استراتيجية التوسع والانكماش (Expand and Contract)، إضافة الأعمدة الافتراضية، وبناء الفهارس باستخدام CONCURRENTLY.

١٥ أكتوبر ٢٠٢٦ · 8 دقائق قراءة اقرأ المقال

تأمين واجهات البرمجة (APIs): دفاع متعمق وتحديد معدل ذكي

تقنيات وتطبيق SecurityFastAPIArchitectureAPI

كيف تحمي واجهات FastAPI من الهجمات الحقيقية: مبدأ الدفاع المتعمق (Defense in Depth)، تحديد المعدل متعدد الطبقات، منع تسريب البيانات عبر Pydantic، وتأمين رؤوس HTTP و CORS.

١٥ أكتوبر ٢٠٢٦ · 8 دقائق قراءة اقرأ المقال

معمارية المهام الخلفية القوية: طوابير العمل وإعادة المحاولة

فلسفة الكود ArchitectureQueuesConcurrencySystems

كيف تصمم معالجة المهام الخلفية لتعمل دون فقدان أي عملية: ضمان التسليم على الأقل مرة واحدة (at-least-once)، التعامل مع المهام المكررة بمبدأ Idempotency، وطوابير الرسائل الميتة (DLQ).

١٥ أكتوبر ٢٠٢٦ · 8 دقائق قراءة اقرأ المقال

مشاريع مختارة

fastapi-forge

FastAPIRedisDockerCI

قالب FastAPI جاهز للإنتاج بفصل حاد بين الطبقات (api/core/services/repos)، وإعدادات مُنمطة عبر pydantic-settings، وريديس لثلاثة استخدامات منفصلة (كاش، تحديد معدل، قفل موزّع)، ولوجز JSON مع request-id، وبنية Docker متعددة المراحل وعامل CI يفحص lint و typing و tests. مبنيّ على مبدأ الاشتراك مع Redis بأوامر ذرّية (Lua) بدل الاعتماد على تنافس على مستوى العملية.

redisjobs

Redisasyncqueue

مكتبة Python غير متزامنة لتشغيل مهام موزعة فوق Redis، بدون أي خيط أو عملية وسيطة. التسليم يعتمد على LMOVE/BLMOVE الذرّية مع reaper يعيد جدولة المهام من العمال المتعطلين (at-least-once)، مع retries بـ backoff أُسّي، وطابور رسائل ميتة (DLQ)، وجدولة مؤجلة، وأولويات، وإلغاء المهام.

debian-bootstrap

DebianSecurityBash

أداة تجهز سيرفر Debian جديد بطريقة قابلة للتكرار: مستخدم sudo، إعداد SSH آمن، جدار ناري UFW، fail2ban، تحديثات أمنية تلقائية، Docker من المستودع الرسمي، swap، وقت/NTP، وقوالب systemd. كل مرحلة بتفحص الحالة الأول ويبدل فقط اللي محتاج يتغير، مع dry-run كامل للاستعراض قبل أي تعديل وآلية تسجيل لكل تشغيل.