حاويات Docker لتطبيق الخادم-الزبون متعدد الخيوط
Docker Containers for Multithreaded Client-Server Application
- الباحث
- أوس سعد محمود شاهين
- المشرف
- أياد حسين عبدالقادر
- الجامعة
- جامعة الموصل
- الكلية / القسم
- كلية علوم الحاسوب والرياضيات / علوم الحاسوب
- الشهادة
- دبلوم عالي
- السنة
- 2022
- لغة الرسالة
- انكليزي
- الكلمات المفتاحية
- Docker Containers ; Client-Server ; Multithreading ; Virtualization
الملخص
مع التنوع الحاصل في أنظمة Still البيئات والمنصات ومع محدودية موارد الأجهزة المضيفة لهذه الأنظمة والبيئات و المنصات (وحدة المعالجة المركزية، الذاكرة الرئيسية، القرص الصلب وغيرهم)، ظهرت الحاجة إلى تطوير تطبيقات ALY للعمل في العديد من البيئات بل يمكننا أن نقول في جميع البيئات. هناك العديد من الطرق لإنشاء برنامج يعمل على بيئات متعددة ¢ وأكثرها شيوعًا وهي .Containerization Als, Virtualization في هذه الدراسة اخترنا تصميم المشروع المقترح وفقا ل 7 ببالاعتماد على منصة Docker يمكن اختصار فكرة المشروع على أنه تصميم برنامج يعتمد على فكرة الخادم والعميل حيث أن هذا الخادم يقوم بمعالجة طلبات عدة عملاء في وقت واحد ويكون قابل للنقل للعمل على أنظمة تشغيل وبيئات متعددة. يمكن لمنصة Docker أن تقوم بأخذ البرنامج وإرفاق جميع الملفات التي يحتاجها لكي يعمل في البيئات المتعددة في وحدة واحدة على شكل .Docker image يُستخدم نموذج برنامج الخادم والعميل في معظم تطبيقات الشبكات. يُعد توفير هذا النموذج على شكل Docker image container قابلة للعمل في Glin متعددة من الأشياء المهمة التي تساهم في تقليل الجهد والوقت المبذولين من قبل المطورين في إنتاج هذا النوع من التطبيقات. يقترح هذا المشروع تصميم كلا من الخادم والعميل على شكل حاويات Docker image Cus Aleit containers يكون الخادم على شكل Docker image container والعملاء على شكل حاوية كذلك. تعتمد حاويات الخادم والعميل في تصميمها على نظام Linux alpine وقد تم تطوير البرامج داخل الحاويات بلغة البرمجة Python في حالة الدراسة في هذا المشروع يعمل الخادم كخادم Wikipedia ويمكنه أن يقوم معالجة طلبات العديد من العملاء في وقت واحد. يقوم Docker ببناء الحاويات معتمدا على Dockerfile ومن ثم يقوم رفعها إلى السجل الخاص برفع .Docker images عندما يتم تحميل Docker images الخاصة بالخادم والعميل يمكنها عندئذ العمل على أي بيئة أو نظام تشغيل.
Abstract
In terms of diversity in operating systems, environments, and platforms, and with limited host infrastructure resources to hold all operating systems and platforms, the need arises to design applications that run in many or in number of operating systems and platforms. There are many methods to create a program running on a multi-environment, the most common of them are virtualization and containerization. In this project, we choose to design the proposed project in the shape of a portable program depending on containerization with the Docker container platform. The Docker container platform can host the program and attach all of its dependencies in one unit (container) to run the application in a number of environments. The client-server model is used in most network applications. Providing this model as a container is one of the important things that contribute to reducing the effort spent by programmers in producing their portable applications. This project proposes a multithreaded client-server for each client, and the server appears as a separate Docker container. Both client and server containers are based on alpine Linux and developed using Python programming language. The execution unit in the containers is Python program files. As a case study, the server acts as a Wikipedia server and it can serve many clients simultaneously. The Docker will build the containers depending on a writing Dockerfile for each container and push them to the registry (docker hub). When pulled the image of the containers from the registry account, then it could be run the container on a host.
طلب نسخة من الملف
الملفات غير منشورة على الموقع. اترك بياناتك وسيتواصل معك موظفو قسم الشؤون الثقافية والفنون لإرسال النسخة مجاناً.