https://www.gitbook.com/download/mobi/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/download/epub/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/book/dzfweb/microsoft-microservices-book/details
التنزيل متاح على: https://aka.ms/microservicesebook
تم النشر بواسطة
قسم مطوري Microsoft وفرق منتجات .NET وVisual Studio
أحد أقسام شركة مايكروسوفت
طريقة مايكروسوفت واحدة
ريدموند، واشنطن 98052-6399
حقوق الطبع والنشر © 2017 لشركة مايكروسوفت
جميع الحقوق محفوظة. لا يجوز إعادة إنتاج أو نقل أي جزء من محتويات هذا الكتاب بأي شكل أو بأي وسيلة دون الحصول على إذن كتابي من الناشر.
يتم توفير هذا الكتاب "كما هو" ويعبر عن آراء المؤلف وآرائه. وجهات النظر والآراء والمعلومات الواردة في هذا الكتاب، بما في ذلك عنوان URL ومراجع مواقع الإنترنت الأخرى، قد تتغير دون إشعار.
بعض الأمثلة الموضحة هنا مقدمة للتوضيح فقط وهي وهمية. لا يوجد أي ارتباط أو اتصال حقيقي مقصود أو ينبغي استنتاجه.
إن Microsoft والعلامات التجارية المدرجة على http://www.microsoft.com على صفحة ويب "العلامات التجارية" هي علامات تجارية مملوكة لمجموعة شركات Microsoft.
Mac وmacOS هما علامتان تجاريتان لشركة Apple Inc.
يعد شعار Docker الحوت علامة تجارية مسجلة لشركة Docker, Inc. ويتم استخدامه بموجب إذن.
جميع العلامات والشعارات الأخرى هي ملك لأصحابها.
المؤلفون المشاركون:
سيزار دي لا توري ، مدير أول، فريق منتج .NET، شركة Microsoft.
بيل واجنر ، مطور محتوى أول، C+E، Microsoft Corp.
مايك روسوس ، مهندس البرمجيات الرئيسي، فريق DevDiv CAT، Microsoft
المحررين:
مايك بوب
ستيف هوج
المشاركون والمراجعون:
جيفري ريتشر ، مهندس برمجيات شريك، فريق Azure، Microsoft
جيمي بوجارد ، كبير المهندسين المعماريين في Headspring
أودي دهان ، المؤسس والرئيس التنفيذي لشركة Special Software
جيمي نيلسون ، المؤسس المشارك والرئيس التنفيذي لشركة Factor10
جلين كوندرون ، مدير البرامج الأول، فريق ASP.NET
مارك فوسيل ، مدير إدارة المشاريع الرئيسي، فريق Azure Service Fabric، Microsoft
دييغو فيجا ، مدير المشروع، فريق Entity Framework، Microsoft
باري دورانس ، مدير برنامج الأمان الأول
روان ميلر ، مدير برامج أول، مايكروسوفت
أنكيت أستانا ، مدير إدارة المشاريع الرئيسي، فريق .NET، Microsoft
سكوت هانتر ، المدير الشريك، PM، فريق .NET، Microsoft
ديلان رايزنبرجر ، مهندس معماري وقائد التطوير في شركة Polly
ستيف سميث ، مدرب وحرفي برمجيات في ASPSmith Ltd.
إيان كوبر ، مهندس الترميز في Brighter
أوناي زوريلا ، مهندس معماري ورئيس فريق التطوير في شركة Plain Concepts
إدوارد توماس ، قائد التطوير في شركة Plain Concepts
رامون توماس ، المطور في Plain Concepts
ديفيد سانز ، المطور في Plain Concepts
خافيير فاليرو ، الرئيس التنفيذي للعمليات في Grupo Solutio
بيير ميليت ، مستشار أول، مايكروسوفت
مايكل فريس ، مدير المنتج، Docker Inc
تشارلز لويل ، مهندس برمجيات، فريق VS CAT، Microsoft
تحقق الشركات بشكل متزايد توفيرًا في التكاليف، وحل مشكلات النشر، وتحسين DevOps وعمليات الإنتاج باستخدام الحاويات. أطلقت Microsoft ابتكارات الحاويات لنظامي التشغيل Windows وLinux من خلال إنشاء منتجات مثل Azure Container Service وAzure Service Fabric، ومن خلال الشراكة مع قادة الصناعة مثل Docker وMesosphere وKubernetes. توفر هذه المنتجات حلول الحاويات التي تساعد الشركات على إنشاء التطبيقات ونشرها بسرعة السحابة وتوسيع نطاقها، مهما كان اختيارها للنظام الأساسي أو الأدوات.
أصبح Docker هو المعيار الفعلي في صناعة الحاويات، بدعم من أهم البائعين في الأنظمة البيئية Windows وLinux. (تعد Microsoft أحد موردي الخدمات السحابية الرئيسيين الذين يدعمون Docker.) في المستقبل، من المحتمل أن يكون Docker موجودًا في كل مكان في أي مركز بيانات في السحابة أو محليًا.
بالإضافة إلى ذلك، تبرز بنية الخدمات الصغيرة كنهج مهم للتطبيقات الموزعة ذات المهام الحرجة. في البنية القائمة على الخدمات الصغيرة، يتم بناء التطبيق على مجموعة من الخدمات التي يمكن تطويرها واختبارها ونشرها وإصدارها بشكل مستقل.
يعد هذا الدليل مقدمة لتطوير التطبيقات القائمة على الخدمات الصغيرة وإدارتها باستخدام الحاويات. ويناقش التصميم المعماري وأساليب التنفيذ باستخدام حاويات .NET Core وDocker. لتسهيل البدء باستخدام الحاويات والخدمات الصغيرة، يركز الدليل على تطبيق مرجعي قائم على الحاويات والخدمات الصغيرة يمكنك استكشافه. نموذج التطبيق متاح في eShopOnContainers GitHub repo.
يوفر هذا الدليل التطوير الأساسي والتوجيه المعماري بشكل أساسي على مستوى بيئة التطوير مع التركيز على تقنيتين: Docker و.NET Core. هدفنا هو أن تقرأ هذا الدليل عند التفكير في تصميم التطبيق الخاص بك دون التركيز على البنية التحتية (السحابية أو المحلية) لبيئة الإنتاج الخاصة بك. ستتخذ قرارات بشأن البنية الأساسية الخاصة بك لاحقًا، عندما تقوم بإنشاء تطبيقاتك الجاهزة للإنتاج. لذلك، يهدف هذا الدليل إلى أن يكون محايدًا للبنية التحتية وأكثر تركيزًا على التنمية والبيئة.
بعد دراسة هذا الدليل، ستكون خطوتك التالية هي التعرف على الخدمات الصغيرة الجاهزة للإنتاج على Microsoft Azure.
لا يركز هذا الدليل على دورة حياة التطبيق أو DevOps أو مسارات CI/CD أو العمل الجماعي. يركز الدليل التكميلي "دورة حياة تطبيق Containerized Docker مع منصة وأدوات Microsoft" على هذا الموضوع. لا يوفر الدليل الحالي أيضًا تفاصيل التنفيذ حول البنية الأساسية لـ Azure، مثل المعلومات حول منسقين محددين.
لقد كتبنا هذا الدليل للمطورين ومهندسي الحلول الجدد في مجال تطوير التطبيقات المستندة إلى Docker والبنية القائمة على الخدمات الصغيرة. هذا الدليل مخصص لك إذا كنت تريد معرفة كيفية تصميم تطبيقات إثبات المفهوم وتصميمها وتنفيذها باستخدام تقنيات تطوير Microsoft (مع التركيز بشكل خاص على .NET Core) ومع حاويات Docker.
ستجد أيضًا هذا الدليل مفيدًا إذا كنت صانع قرار تقني، مثل مهندس مؤسسي، ويريد نظرة عامة على الهندسة المعمارية والتكنولوجيا قبل أن تقرر النهج الذي ستختاره للتطبيقات الموزعة الجديدة والحديثة.
يقدم الجزء الأول من هذا الدليل حاويات Docker، ويناقش كيفية الاختيار بين .NET Core و.NET Framework كإطار عمل للتطوير، ويقدم نظرة عامة على الخدمات الصغيرة. هذا المحتوى مخصص للمهندسين المعماريين وصناع القرار التقنيين الذين يريدون نظرة عامة ولكنهم لا يحتاجون إلى التركيز على تفاصيل تنفيذ التعليمات البرمجية.
يبدأ الجزء الثاني من الدليل بقسم عملية تطوير التطبيقات المستندة إلى Docker. وهو يركز على أنماط التطوير والخدمات الصغيرة لتنفيذ التطبيقات باستخدام .NET Core وDocker. سيكون هذا القسم ذا أهمية كبيرة للمطورين والمهندسين المعماريين الذين يرغبون في التركيز على التعليمات البرمجية والأنماط وتفاصيل التنفيذ.
يعد تطبيق eShopOnContainers تطبيقًا مرجعيًا لـ .NET Core والخدمات الصغيرة المصممة للنشر باستخدام حاويات Docker. يتكون التطبيق من أنظمة فرعية متعددة، بما في ذلك العديد من الواجهات الأمامية لواجهة المستخدم الخاصة بالمتجر الإلكتروني (تطبيق ويب وتطبيق جوال أصلي). ويتضمن أيضًا الخدمات الصغيرة والحاويات الخلفية لجميع العمليات المطلوبة من جانب الخادم.
يعد هذا الكود المصدري للتطبيق القائم على الخدمات الصغيرة والحاويات مفتوح المصدر ومتوفر في eShopOnContainers GitHub repo.
لقد كتبنا هذا الدليل لمساعدتك على فهم بنية التطبيقات المعبأة في حاويات والخدمات الصغيرة في .NET. سيتم تطوير الدليل والتطبيق المرجعي ذي الصلة، لذلك نحن نرحب بتعليقاتك! إذا كانت لديك تعليقات حول كيفية تحسين هذا الدليل، فيرجى إرسالها إلى:
[!div class="step-by-step"] [التالي] (container-docker-introduction/index.md)