在阅读的过程中有不论什么问题,欢迎一起交流

邮箱:1494713801@qq.com   

QQ:1494713801

Cloud Foundry核心组件架构图例如以下:

主要组件:

    Cloud Controller:实质上是VMC和STS交互的server端,它收到指令后发消息到各模快,管理整个云的执行。相当于Cloud Foundry的大脑。

DEA:负责处理对所部署的App的訪问请求。事实上质是打包和訪问Droplet。当中Droplet是通过Stager组件将提交的源码及Cloud Foundry配置好的执行环境以及一些控制脚本等,所有打包在一起形成的tar文件。

Routers:对全部进来的请求进行路由控制。

Router组件是可扩展的,由多个 Router共同处理进来的请求。但怎样对Router做负载均衡不属于Cloud Foundry的实现范围。

进入Router的请求主要有两类。

  • 第一类是来自VMC Client或者STS的,由Cloud Foundry使用者发出,叫做管理请求。这类请求会被路由到Cloud Controller组件处理。
  • 第二类是对所部署的App的訪问请求。这部分请求会被路由到App execution,即DEA组件中。

Health Manager:负责从各个DEA获得执行信息,然后进行统计分析、报告、发出告警等。

Services:负责提供云平台的各种应用服务,是一个独立的、插件式的模块,便于第三方方便地把自己的服务整合成Cloud Foundry服务。

辅助组件:

UAA:负责用户模型的认证,使用组织和用户空间等概念。利于用户及权限管理。

另外UAA DB用于存储用户相关信息。

NATS:是一个基于事件驱动的、轻量级的消息系统,用于消息公布和订阅,联系着各个模块。

Stager:攻克了打包(Stage)过程须要操作大量文件且操作时间长的问题,所以它作为独立进程。使打包工作异步进行。不堵塞作为核心组件的Cloud Controller。

源代码导读

能够在Github上找到CloudFoundry的所有代码:https://github.com/cloudfoundry,会看到几个不同的Repositories,它们各自是:

1、vcap: Cloud Foundry的Core,又或者称作Kernel。

2、vcap-service: Cloud Foundry的Service组件。Cloud Foundry的service是作为插件提供的,这出于它方便第三方开发service而设计的;

3、vmc: VMware Cloud CLI. 是一个Ruby应用,与Cloud Foundry的CLI交互。主要通过分析用户输入的CLI。向CloudFoundry发送Restful请求。

4、vcap-java: 假设你的app是用java开发,且须要与Cloud Foundry交互,比如取得当前serviceserver的ip地址等,你可能须要这个jar。里面对我们Java开发经常使用框架有所支持,它底层也是 对CloudFoundry的Restful请求的包装;

5、vcap-java-client: Cloud Foundry的Restful API的Java封装。与上面的项目不一样,它仅仅是个简单的读取CloudFoundry信息,并放如JavaBean中;

6、vcap-test: Cloud Foundry的test cases;

7、vcap-test-assets: Cloud Foundry一些apps演示样例。

【Cloud Foundry】Could Foundry学习(二)——核心组件分析的更多相关文章

  1. Quartz学习--二 Hello Quartz! 和源码分析

    Quartz学习--二  Hello Quartz! 和源码分析 三.  Hello Quartz! 我会跟着 第一章 6.2 的图来 进行同步代码编写 简单入门示例: 创建一个新的java普通工程 ...

  2. 必应词典--英语学习APP案例分析

    一.调研,评测 1.个人上手体验 这还是第一次听说必应词典,只能说知名度有待提高啊.首先,下载打开必应词典的第一感觉就是不够美观,个人感觉不论图标还是界面的美感都不足,既繁琐有简洁,给人的最直观感受就 ...

  3. 必应词典英语学习APP案例分析

    一.调研,评测 1.在此次作业之前并没有听过这个学英语app,必应听起来就像英语单词bing,第一次听到觉得这个app很奇怪,但没有将它和英语挂上钩.但是使用一阵子之后我觉得这个名字很好上口,其次这个 ...

  4. 【集美大学1411_助教博客】个人作业2——英语学习APP案例分析 成绩

    个人作业2--英语学习APP案例分析,截止发稿时间全班31人,提交31,未提交0人.有一名同学已经写了作业但忘记提交了,这次给分了,但下不为例.由于助教这周有点忙,所以点评得非常不及时,请同学们见谅. ...

  5. SpringCloud学习(二):微服务入门实战项目搭建

    一.开始使用Spring Cloud实战微服务 1.SpringCloud是什么? 云计算的解决方案?不是 SpringCloud是一个在SpringBoot的基础上构建的一个快速构建分布式系统的工具 ...

  6. Android JNI学习(二)——实战JNI之“hello world”

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  7. HashMap的源码学习以及性能分析

    HashMap的源码学习以及性能分析 一).Map接口的实现类 HashTable.HashMap.LinkedHashMap.TreeMap 二).HashMap和HashTable的区别 1).H ...

  8. Dubbo源码学习(二)

    @Adaptive注解 在上一篇ExtensionLoader的博客中记录了,有两种扩展点,一种是普通的扩展实现,另一种就是自适应的扩展点,即@Adaptive注解的实现类. @Documented ...

  9. Java开发学习(二十二)----Spring事务属性、事务传播行为

    一.事务配置 上面这些属性都可以在@Transactional注解的参数上进行设置. readOnly:true只读事务,false读写事务,增删改要设为false,查询设为true. timeout ...

  10. Java开发学习(二十四)----SpringMVC设置请求映射路径

    一.环境准备 创建一个Web的Maven项目 参考Java开发学习(二十三)----SpringMVC入门案例.工作流程解析及设置bean加载控制中环境准备 pom.xml添加Spring依赖 < ...

随机推荐

  1. Qt Chart 5.7.0 傻瓜安装教程

    前提 qtchart 里的README文件(注意红色标记处)(本人翻译不行.多多见谅,也可以在评论里纠正( ⊙ o ⊙ )) --------------- Qt Charts 5.7.0 ----- ...

  2. 流行的Python项目汇总

    年有哪些流行的Python项目呢?下面,我们一起来看下. 一.测试和调试 python_koans :Python Koans 算 “Ruby Koans” 的一部分,作为交互式教程,可以学习 TDD ...

  3. oschina数据库相关

    数据库相关 110数据库服务器 233NoSQL数据库 18MySQL衍生版 6开源XML数据库 311数据库管理工具 117数据库调整和优化 274数据库驱动程序 41数据库建模

  4. 基于visual Studio2013解决算法导论之048红黑树

     题目 红黑树 解决代码及点评 // 红黑树.cpp : 定义控制台应用程序的入口点. // #include <stdio.h> #include <stdlib.h> ...

  5. 基于visual Studio2013解决C语言竞赛题之0514单词统计

     题目 解决代码及点评 /************************************************************************/ /* 14. 有一行字 ...

  6. 各国iPhone5系列最新裸机价格

    美国/加拿大/中国香港/中国大陆iPhone5系列最新裸机价格

  7. hibernate 一对多映射

    package com.entity.onetomany; import java.util.ArrayList; import java.util.List; import javax.persis ...

  8. Can't connect to MySQL server on 'XXX' (13)

    出现can't connect to MySQL server using '' (13)的错误,结果是 SELinux 不让 httpd 访问外网,一开始还以为是iptables造成的,关闭之后发现 ...

  9. java.util.concurrent-------TimeUnit

    java.util.concurrent并发库是JDK1.5新增的,其作者是Doug Lea ,此人是个BOSS级别的天才人物了.有了他提供的类库,使得我们对多线程并发.锁有了很大的帮助,减少了并发难 ...

  10. Android_Service组件详解

    1.Service概述 Service服务是一个没有用户界面的在后台运行执行操作的应用组件,其它组件可以通过Intent意图启动这个Service去完成特定的功能,比如通过Service可以完成播放音 ...