二、公共组件接入指南

    虽然这类组件是由其他团队开发、维护,但是运行时是在业务实际应用内的,所以本质上可以认为是应用的一部分。

    通常情况下,这类组件所用到的配置由原始开发团队维护,不过由于实际应用的运行时、环境各不一样,所以我们也允许应用在实际使用时能够覆盖公共组件的部分配置。

    公共组件的接入步骤,和普通应用几乎一致,唯一的区别是公共组件需要创建自己唯一的Namespace。

    所以,首先执行普通应用接入文档中的以下几个步骤,然后再按照本章节后面的步骤操作。

    创建Namespace需要项目管理员权限,如果发现没有添加Namespace按钮,可以找项目管理员授权。

    • 点击页面左侧的添加Namespace

    • 输入公共组件的Namespace名称,需要注意的是Namespace名称全局唯一

      • Apollo会默认把部门代号添加在最前面
      • create-namespace-detail
    • 点击提交后,页面会自动跳转到关联Namespace页面

      • 首先,选中所有需要有这个Namespace的环境和集群,一般建议全选
      • 其次,选中刚刚创建的namespace
      • 最后,点击提交
    • 关联成功后,页面会自动跳转到Namespace权限管理页面

      • 分配修改权限
        • namespace-permission-edit
      • 分配发布权限
    • 点击“返回”回到项目页面

    2.2.2 添加配置项

    编辑配置需要拥有这个Namespace的编辑权限,如果发现没有新增配置按钮,可以找项目管理员授权。

    2.2.2.1 通过表格模式添加配置

    • 点击提交public-namespace-item-created

    2.2.2.3 通过文本模式编辑

    这部分和普通应用一致,具体步骤请参见。

    配置只有在发布后才会真的被应用使用到,所以在编辑完配置后,需要发布配置。

    发布配置需要拥有这个Namespace的发布权限,如果发现没有发布按钮,可以找项目管理员授权。

    • 点击“发布按钮”

    • 填写发布相关信息,点击发布public-namespace-publish-items

    2.2.4 应用读取配置

    配置发布成功后,应用就可以通过Apollo客户端读取到配置了。

    Apollo目前提供Java客户端,具体信息请点击:

    如果应用使用了其它语言,也可以通过直接访问Http接口获取配置,具体可以参考其它语言客户端接入指南

    对于公共组件的配置读取,可以参考上述文档中的“获取公共Namespace的配置”部分。

    这里就讲一下应用如何覆盖公用组件的配置,简单起见,假设apollo-portal应用使用了hermes producer客户端,并且希望调整hermes的批量发送大小。

    • 进入使用公共组件的应用项目首页,点击左侧的添加Namespace按钮

      • 所以,在这个例子中,我们需要进入apollo-portal的首页。
      • (添加Namespace需要项目管理员权限,如果发现没有添加Namespace按钮,可以找项目管理员授权)
    • 找到hermes producer的namespace,并选择需要关联到哪些环境和集群link-public-namespace

    • 关联成功后,页面会自动跳转到Namespace权限管理页面

      • 分配修改权限
      • 分配发布权限namespace-publish-permission
    • 点击“返回”回到项目页面

    2.3.2 覆盖公用组件配置

    • 点击新增配置

    • 输入要覆盖的配置项override-public-namespace-item

    • 点击提交

    配置只有在发布后才会真的被应用使用到,所以在编辑完配置后,需要发布配置。

    发布配置需要拥有这个Namespace的发布权限,如果发现没有发布按钮,可以找项目管理员授权。

    • 点击“发布按钮”override-public-namespace-item-publish-entry