【问题标题】:What is the difference of a cloudfoundry "service broker" and its "service broker worker"?Cloudfoundry“服务代理”和它的“服务代理工作者”有什么区别?
【发布时间】:2018-11-14 15:44:40
【问题描述】:

大多数 Cloudfoundry 服务磁贴安装一个服务代理和一个服务代理工作器。

我了解代理正在接收来自云控制器 (CC) 的 Service Broker API 请求,并托管所有服务类型的主仪表板 UI。 因此代理向市场注册并在创建实例上创建虚拟机并在其上安装服务并提供用于管理实例的 UI 部分。

但是经纪人工作人员的具体职责是什么?
它何时以及为什么与哪些组件进行通信?

【问题讨论】:

    标签: cloud-foundry paas pcf cf-bosh


    【解决方案1】:

    代理工作者,与 Spring Cloud Services 磁贴一样,负责完成可能需要很长时间的工作。与其在代理中绑定一个线程来执行此操作,不如将其移交给处理任务的代理工作人员。

    但是broker worker的具体职责是什么?

    这取决于磁贴,但最有可能的是代理工作人员将负责为服务创建实际的支持资源。同样,在 Spring Cloud Services 的情况下,管理后端服务应用程序实例的是代理工作者。

    https://docs.pivotal.io/spring-cloud-services/1-5/service-broker-and-instances.html#service-instance-management

    其他瓷砖/经纪人工作人员可能会做不同的事情,但这通常是建立服务的昂贵工作发生的地方。

    它何时以及为什么与哪些组件进行通信?

    这将更具体到图块。在 SCS 的情况下,代理工作者主要与 API(即云控制器)对话以管理支持服务应用程序实例。也就是说,经纪人可以做各种各样的事情。调用 AWS 或其他 IaaS 来创建某些东西,调用 Bosh 来动态部署某些东西等等。这取决于服务磁贴要做什么。

    希望有帮助!

    【讨论】:

    • 所以服务代理本身只是一个填充服务代理接口的小应用程序 a) 向市场注册服务和计划 b) 在代理工作人员中启动“执行”线程在创建/更新删除实例上对吗?在“正常情况下”是在工作人员内部的线程中完成工作,或者是否也会为此启动一个单独的进程甚至虚拟机?
    • 是的,这就是它的要点。很难说工作发生的“正常”情况是什么。这可能取决于经纪人的实施。在 SCS 中,工作发生在代理工作进程的线程中。我想如果需要的话,可以分叉其他进程。如果您使用 bosh 动态部署某些东西,那么代理工作者很可能会使用 bosh cli 来处理该工作。
    • 为了强化丹尼尔所说的,我认为没有“正常情况”。当服务实例供应需要几秒钟以上时,有很多方法可以实现服务代理所需的异步行为。这仅取决于实现代理所用的语言、代理使用的库、供应的服务资源的性质以及服务作者做出的架构决策。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    • 2018-10-23
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多