Design and implementation of Warden frame in Cloud foundry
Nanjing University Xu Xian
This article describes the warden framework used in product cloud foundry at the platform-service level. Cloud Foundry is a platform, a service product, that enables users to deploy their completed projects to Cloud Foundry through the command-line tools provided by Cloud Foundry without modifying the project, simplifying the deployment process and reducing operational costs. Developers can deploy their own applications on this platform without having to worry about too many running environment issues. For Cloud Foundry, there are many modules, and if the system resources consumed by the application are not limited, it can happen because the specific module or the application of excessive resources makes the whole system running. The warden framework is to solve the problem of unbalanced resource allocation and isolation of system resources. The warden framework mainly uses the Linux Cgroup technology to isolate the system resources, optimize the load of the system and avoid overload. This paper first introduces the background of Cloud Foundry project and the reason and warden basic information of Warden framework, introduces the domain of virtualization, then introduces the main work of this article, then introduces the technical background of the project, including event machine technology, Ruby On Rails technology and control group technology, but also covers the basic concepts of PAAs, IaaS, and SaaS. Next, we introduce the analysis and design of Warden framework, including the function requirement analysis of the product, the stakeholder analysis, the solution of the project, the construction structure and so on, then analyze and introduce the Warden client, Warden Kyoto, Warden Server and EM Warden Client module. Finally, the implementation of Warden framework is introduced, and the implementation of Iomux, WSH, Oom and Repquota of Warden server is introduced emphatically. Warden Client module realizes a thin clients, provides the basic ability to interact with the server, and the Em-warden client module enhances the Warden client module, providing the event machine mechanism, To achieve multithreaded network programming; The Warden Kyoto module is a protocol cluster that client and server understand each other, mainly based on Ruby Beefcake, protobuf files that can be transmitted via sockets; warden Server is the basic ability to achieve the main body, it provides the container processing and process distribution, container state maintenance, but also to the system's CPU, memory, IO, bandwidth and other resourcesControl and isolation mechanism.
Design and implementation of the Warden framework in the
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.