بنية الخدمات المصغّرة · خرائط ذهنية
بنية الخدمات المصغّرة. خريطة ذهنية قابلة للتحرير تضم فروعًا ملونة وأفكارًا فرعية وروابط. توضح الخطوط المنحنية العلاقات، وتظهر الأسهم حين يكون للاتجاه معنى.
الخدمات المصغّرة بنية يُبنى فيها التطبيق من خدمات صغيرة كثيرة تُنشر كل واحدة منها بشكل مستقل وتملك بياناتها الخاصة، ويجري تنسيقها عبر بوابة API والرسائل بدل الحالة المشتركة.
بنية الخدمات المصغّرة · خرائط ذهنية
لوحة MindMap التفاعلية لهذا الشرح — كل مسار وصف وسهم أعلاه جزء من مخطط QueryChart حقيقي يمكنك فتحه وتعديله.
كيفية قراءة الخريطة الذهنية
- ابدأ بالموضوع في المركز، ثم اتبع أحد الفروع الملونة لاستكشاف الأفكار المرتبطة به.
- توضح الخطوط المنحنية العلاقات، وتظهر الأسهم حين يكون للاتجاه معنى.
Clients & gateway
يجمع هذا الفرع “Web and mobile clients”, “The gateway is the single entry point: it routes each request to the right service, handles authentication and often aggregates responses from several services.”.
Independent services
يجمع هذا الفرع “Orders service”, “Payments service”, “Teams deploy and scale services independently”, “Users service”.
Messaging
يجمع هذا الفرع “Services communicate by publishing events rather than calling each other directly — so one service's change or outage never blocks another.”.
Owned data
يجمع هذا الفرع “The defining rule of microservices: no shared schema. Each service's data is private to it, which is what allows teams to deploy independently.”.
Observability
يجمع هذا الفرع “Metrics, logs and traces feed one view”.
روابط بين الفروع
كل خدمة قابلة للنشر بشكل مستقل، وهي الخاصية التي يوجد كل ما تبقّى في هذه البنية لحمايتها.
تتواصل الخدمات عبر ناقل الرسائل وتملك كل واحدة منها قاعدة بياناتها الخاصة؛ والحالة المشتركة هي النمط المضاد.
بوابة API هي الباب الأمامي الوحيد للنظام؛ ولا تخاطب تطبيقات العميل الخدمات مباشرة أبداً.
لهذا الاستقلال ثمن يُدفع بقابلية الرصد، فالخدمات الكثيرة لا يمكن إدارتها إلا حين يغطّيها عرض واحد.
تنسّق الخدمات المصغّرة الحاويات التي يحزمها Docker، والشرحان المرئيان متصلان.
العلاقات الرئيسية والخلاصات
- كل خدمة قابلة للنشر بشكل مستقل، وهي الخاصية التي يوجد كل ما تبقّى في هذه البنية لحمايتها.
- تتواصل الخدمات عبر ناقل الرسائل وتملك كل واحدة منها قاعدة بياناتها الخاصة؛ والحالة المشتركة هي النمط المضاد.
- بوابة API هي الباب الأمامي الوحيد للنظام؛ ولا تخاطب تطبيقات العميل الخدمات مباشرة أبداً.
- لهذا الاستقلال ثمن يُدفع بقابلية الرصد، فالخدمات الكثيرة لا يمكن إدارتها إلا حين يغطّيها عرض واحد.
- تنسّق الخدمات المصغّرة الحاويات التي يحزمها Docker، والشرحان المرئيان متصلان.
متى تستخدم هذا الشرح المرئي
- شرح سبب وجود الخدمات المصغّرة لفريقك وما هي مقايضاتها فعلياً قبل أن يتبنّاها.
- توثيق حدود الخدمات ومواضيع الرسائل وملكية البيانات في نظام قائم لتأهيل المنضمين الجدد.
- تدقيق الأنماط المضادة: قاعدة بيانات مشتركة أو خدمة تستدعي خدمة أخرى مباشرة هي تسرّب عبر الحد الفاصل.
كيف تعمل
عدّل الموضوع المركزي
غيّر اسم الموضوع ليناسب مشروعك أو درسك.
وسّع الفروع
حرر الأفكار وأضف أمثلة أو ملاحظات.
اربط الأفكار ذات الصلة
ارسم روابط بين الفروع، واستخدم الأسهم عندما يكون الاتجاه مهمًا.
الأسئلة الشائعة
ما هي بنية الخدمات المصغّرة؟
هي أسلوب معماري يُبنى فيه التطبيق من خدمات صغيرة كثيرة، كل واحدة مسؤولة عن قدرة عمل واحدة، وتُنشر بشكل مستقل وتملك بياناتها الخاصة. وتتواصل الخدمات عبر الشبكة (عادةً بـHTTP وناقل رسائل) بدل مشاركة الذاكرة أو قاعدة بيانات واحدة. والفائدة هي قابلية النشر المستقل واستقلالية الفرق؛ أما الكلفة فهي تعقيد الشبكة والحاجة إلى قابلية الرصد.
لماذا تملك كل خدمة مصغّرة قاعدة بياناتها الخاصة؟
لأن البيانات المشتركة هي الاقتران الذي يكسر النشر المستقل. فإن كانت خدمتان تقرآن الجدول نفسه وتكتبان فيه، فلن تستطيعا تغيير مخطط بياناتهما ولا التوسّع ولا النشر دون تنسيق بينهما. وملكية مخزن بياناتها الخاص هي ما يتيح لخدمة أن تتطوّر وتتوسّع وفق جدولها هي، وهي القاعدة التي تفرضها مجموعة «كل خدمة تملك قاعدة بياناتها الخاصة» في الشرح المرئي.
ما دور بوابة API في الخدمات المصغّرة؟
البوابة هي نقطة الدخول الوحيدة للنظام. توجّه الطلبات إلى الخدمة الصحيحة، وتتولّى الشواغل العابرة للطبقات مثل المصادقة وتحديد معدّل الطلبات، وتستطيع تجميع الاستجابات القادمة من عدة خدمات في استجابة واحدة. وتخاطب تطبيقات العميل البوابة، لا الخدمات الفردية مباشرة، وهذا ما يُبقي طوبولوجيا الخدمات حرة في التغيّر خلفها.
متى ينبغي ألا تستخدم الخدمات المصغّرة؟
حين يكون النظام صغيراً أو الفريق صغيراً. فالخدمات المصغّرة تقايض التعقيد المعماري (أعطال الشبكة، والمعاملات الموزّعة، وقابلية الرصد) بقابلية النشر المستقل، وهذه المقايضة لا تُثمر إلا حين يكبر الفريق بما يكفي ليصبح النشر المستقل هو القيد الحاكم. ومشكلات فرق كثيرة يحلّها تطبيق أحادي جيّد التقسيم إلى وحدات، وهو موضوع الشرح المرئي للبنية الأحادية.
حرر هذه الخريطة الذهنية في QueryChart
افتح الخريطة على لوحة قابلة للتحرير. انقل الأفكار وأضف فروعًا وروابط.