المدوّنة
ملاحظات تقنية
13 مقالة عن هندسة الأنظمة الخلفية وتشغيل الإنتاج والذكاء الاصطناعي التطبيقي
صندوقا صادر، نمط واحد
Cloud Tasks للأوامر وPub/Sub للأحداث — نفس الـ outbox المعاملاتي، نفس شكل الترحيل، نفس التسليم عبر HTTP. التفرع الحقيقي الوحيد في الطبقة الوسطى، وفي من يملك التوجيه.
اقرأتنازع الأقفال الذي لم يظهر في خطة الاستعلام
حتى ألف عامل Go متزامن، كلٌّ منهم يكتب صفوف مستخدمه الخاص فقط في MySQL — ومع ذلك ظل InnoDB يكتشف حالات deadlock بينهم. آلية أقفال الفجوات، مقارنة الحلول، والحل البسيط الذي اخترناه عمدًا.
اقرأخط الدفع الذي لم يُحظر
حملات الإشعارات مهامَ دفعات مجدولة: الأهلية وإزالة التكرار مدفوعتان إلى استعلام الجمهور، سجل إرسال يعمل نقطةَ استئناف، وخنق مقابل حصص المنصة — والبوابتان اللتان سأضيفهما اليوم.
اقرأصمّم سجلّاتك كأنها API
أسئلة العمل يجيب عنها CloudWatch Logs Insights: عقود سطور السجل، لماذا توسيع سطر موجود يتفوق على إضافة سطر جديد، مطبّات JSON escaping، وفخ مدة الاحتفاظ.
اقرأبناء منتج واجهته خيط محادثة
التحقق من رموز LIFF، أشرطة بطاقات Flex Message، القوائم الغنية، وتدفقات البوت توجيهًا — هندسة منصات المحادثة بوصفها انضباطًا خلفيًا.
اقرأتقديم توصيات ML داخل تطبيق LINE مصغّر
المعمارية خلف منصة بحث عقاري تُقدَّم بالكامل عبر LINE — خلفية Go، تطبيقات LIFF المصغّرة، خدمة استدلال XGBoost، وخطوط الدفعات التي تُبقي التوصيات طازجة.
اقرأاستعادة كوارث متعددة المناطق تتمرّن عليها فعلًا
طوكيو أساسية وأوساكا احتياطية بمجموعة وحدات Terraform واحدة: ما الذي تستنسخه، وما الذي تتمرّن عليه، ولماذا خطة تحويل غير مختبَرة رسمٌ بياني لا قدرة.
اقرأالمعمارية السداسية داخل Lambda، مع الكود
كيف بقيت أكثر من خمسين دالة Lambda بلغة TypeScript قابلة للاختبار ومتّسقة: معالجات من عشرة أسطر، منافذ ومحوّلات، وحالة استخدام واحدة تخدم مداخل الـ API والطوابير والدفعات.
اقرأServerless في الإنتاج: دروس من منصة AWS مؤسسية
أكثر من خمسين دالة Lambda، معمارية سداسية، خطوط معالجة دفعات مدفوعة بـ SQS، واستعادة كوارث متعددة المناطق — البنية وتصميم الطوابير والقرارات التشغيلية خلف منصة serverless مؤسسية.
اقرأعندما تكون goroutine الأداة الخاطئة
تقرير ما بعد الحادثة عن إلغاء الـ context في Go: كتابة cache من نوع «أطلق وانسَ» ورثت سياق الطلب فماتت معه — التشخيص، الإصلاح الأول المرفوض، والإصلاح النهائي الممل.
اقرأمصادقة بين الخدمات دون service mesh
نمط الـ sidecar proxy على Cloud Run: مصادقة الوارد، الصادر عبر بوابة API داخلية مركزية، وموزّع حمل داخلي يوجّه بالمسار — فوائد الـ mesh دون ثقله.
اقرأواجهة واحدة، أربع طرق للدفع
بطاقة مع 3DS، محفظة، دفع في المتجر، وخصم مباشر خلف خدمة داخلية واحدة — كيف يُبقي تجريدُ بوابة الدفع غرائبَ المزوّد خارج تدفق الطلبات.
اقرأخدمات مصغّرة موجّهة بالأحداث دون فقدان الأحداث: نمط Transactional Outbox عمليًا
كيف حافظنا على اتساق الطلبات والمدفوعات والخدمات اللاحقة على Cloud Run وSpanner باستخدام نمط الـ outbox المعاملاتي وعمّال ترحيل عبر طوابير المهام — وما الذي كنا سنفعله بشكل مختلف.
اقرأ