Go (Golang) والخدمات المصغرة: من الفكرة إلى الإنتاج
300 صفحات
Arabic
PDF
4.5

Go (Golang) والخدمات المصغرة: من الفكرة إلى الإنتاج

Go (Golang) والخدمات المصغرة: من الفكرة إلى الإنتاج

المؤلف:

السنة:

ملخص:

هذا الكتاب هو دليل عملي للمطورين الذين يرغبون في إتقان بناء بنية الخدمات المصغرة بلغة Go (Golang). على عكس العديد من الإصدارات النظرية، يركز المؤلف على الأمثلة الواقعية والمهام النموذجية التي يواجهها كل مطور عند الانتقال من التطبيق المتجانس إلى الخدمات المصغرة.



عن ماذا يتحدث هذا الكتاب؟

يغطي الكتاب دورة التطوير الكاملة للخدمات المصغرة بلغة Go: من التصميم والتنفيذ إلى النشر والمراقبة. ستتعلم كيفية تنظيم الكود بشكل صحيح باستخدام الإمكانيات المدمجة في Go (الغوروتينات، القنوات، الواجهات)، وأي الأنماط تعمل بشكل أفضل في البيئة الموزعة.



  • تصميم الخدمات المصغرة: كيفية تقسيم التطبيق المتجانس إلى خدمات، وتحديد حدودها، واختيار بروتوكولات التفاعل (REST, gRPC, GraphQL).
  • العمل مع البيانات: إدارة المعاملات في النظام الموزع، نمط Saga، CQRS و Event Sourcing باستخدام Go كمثال.
  • الشبكة والاتصالات: كتابة عملاء وخوادم HTTP/gRPC موثوقة، معالجة الأخطاء، المهلات وإعادة المحاولة.
  • الحاويات والتنسيق: بناء صور Docker خفيفة الوزن لتطبيقات Go، النشر في Kubernetes، مخططات Helm.
  • المراقبة: التسجيل (السجلات المنظمة)، المقاييس (Prometheus) والتتبع (OpenTelemetry) في الخدمات المصغرة بلغة Go.
  • الاختبار: اختبارات الوحدة، اختبارات التكامل مع الحاويات (testcontainers)، اختبارات الأداء.


لمن هذا الكتاب؟

  • مطورو Python الذين يرغبون في تعلم Go لتطوير الواجهة الخلفية والخدمات المصغرة.
  • مطورو Go الذين يكتبون تطبيقات متجانسة ويريدون الانتقال إلى بنية الخدمات المصغرة.
  • مهندسو DevOps الذين يرغبون في فهم أعمق للبنية الداخلية للخدمات بلغة Go.
  • قادة الفرق والمهندسون المعماريون الذين يختارون التقنيات لنظام موزع جديد.


ماذا ستتعلم بعد القراءة؟

  • كيفية كتابة كود Go أصلي للخدمات المصغرة باستخدام أفضل ممارسات المجتمع.
  • كيفية تنفيذ Service Discovery و Circuit Breaker و Rate Limiting بدون مكتبات خارجية.
  • كيفية العمل بكفاءة مع PostgreSQL و Redis و Kafka في الخدمات المصغرة بلغة Go.
  • كيفية إعداد خط أنابيب CI/CD لمشاريع Go باستخدام GitHub Actions.
  • كيفية تجنب الأخطاء النموذجية عند العمل مع الغوروتينات والذاكرة في الأنظمة عالية التحميل.


المؤلف — أليكسي بيتروف، مطور خلفية أول بخبرة 10 سنوات. عمل في شركات تكنولوجيا مالية كبيرة، حيث قام بتحويل التطبيقات المتجانسة إلى خدمات مصغرة. يدير مدونة حول Go والهندسة المعمارية، ويشارك في المؤتمرات.



الكتاب مناسب لكل من المبتدئين في Go والمطورين ذوي الخبرة — سيجد الجميع ممارسات مفيدة وحلولاً جاهزة. جميع أمثلة الكود متاحة في المستودع على GitHub.

توصيات