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

邮箱: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. 带OpenSSL和MySQL的静态编译版本~

    http://www.npcglib.org/~stathis/blog/precompiled-qt4-qt5/ http://www.npcglib.org/~stathis/blog/preco ...

  2. oschina 开发工具

    开发工具 29反编译工具 26持续集成系统 19SQL注入工具 139Git开源工具 138Java开发工具 43.NET开发工具 85PHP开发工具 96C/C++开发工具 70Ruby/Rails ...

  3. CMake初步(1)

    转自:<你所不知的OSG>第一章:CMake初步(1)http://bbs.osgchina.org/forum.php?mod=viewthread&tid=1189&f ...

  4. iframe,window,滚动栏的一些问题

    1.Iframe不显示边框:frameborder=0 2.Iframe不显示横向滚动栏:在iframe所指向的页面增加: <style> html{overflow-x:hidden;} ...

  5. svn:怎样批量删除.svn文件

    怎样批量删除.svn文件 使用SVN工具的时候会生成一些以“svn”作为后缀的文件,而且每个文件夹下都有,如果想删除这些.svn文件夹,通过手动删除的渠道是很繁琐的事情. 通过以下的简单步骤可以在右键 ...

  6. Oracle 11gR2的完全卸载

    首先停止oracle服务,卸载oracle,其次删除oracle文件夹,最后删除oracle服务和清理注册表. 以下是详细教程 1.关闭oracle所有的服务.可以在windows的服务管理器中关闭: ...

  7. java--继承的一些笔记

    public class Person { public void display(){ System.out.println("Play Person..."); } stati ...

  8. 演练5-2:Contoso大学校园管理2

    一.添加列标题排序功能 我们将增加Student/Index页面的功能,为列标题添加超链接,用户可以点击列标题对那一列进行排序. 1.修改Index方法 public ActionResult Ind ...

  9. Integral Promotions整数提升和符号扩展(char,unsigned char,signed char)

    以下来自msdn: Objects of an integral type can be converted to another wider integral type (that is, a ty ...

  10. HTML——左右側边栏布局

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...