乐趣区

关于客户端:ZEGO-自研客户端配置管理系统-云控

一、惯例客户端配置的弊病

客户端配置信息通常会通过一个动态文件进行治理,或寄存在本地或者通过近程获取。存在本地最大的问题是不易更新,所以通常做法是通过近程获取。

咱们通过两种常见的场景来看看动态文件治理的客户端配置存在的问题:

1、一些配置参数的值是要依赖客户本地环境参数(机型、零碎版本、客户端版本、网络环境、硬件设施),客户本地环境参数产生了变动,那么配置参数要有相应的值来匹配,否则有可能会导致客户端的用户体验变差甚至性能不可用。举个例子,是否开启硬件编码减速,在 macOS + 零碎版本的条件下要敞开,而在 iOS 下要关上。

2、客户端新开发的性能心愿能依据用户或者用户所在地区、操作系统、机型等维度进行灰度上线。

通过下面列举的两种场景能够看到,动态文件要反对依据用户的环境来匹配适合的配置信息,有一个方法就是枚举所有可能的状况,客户端依据用户本地环境匹配其中一种状况,然而带来的问题也是不言而喻的:

1、客户端配置文件过大,客户拉取配置文件的工夫会变长,影响客户体验;服务器的流量和带宽存在不必要的节约;

2、配置文件内容结构复杂,不易于治理,难以保护;

3、客户端解析配置文件的逻辑简单且不灵便。

随着客户端的性能减少和优化,配置参数也会越来越多,会进一步加剧以上问题。

二、ZEGO 自研客户端配置管理系统 —— 云控系统

思考到动态文件的客户端配置在开发和日常经营治理中可能产生的种种问题,为了达到最好的用户体验,同时保障开发、经营管理效率,ZEGO 自研了客户端配置管理系统,外部也称之为“云控系统”。

以下是云控系统的简易版架构图:

三、解决客户端配置信息动态化需要

云控系统通过以下几方面解决了客户端配置信息动态化需要:

1、ZEGO Settings SDK(云控 SDK)对立了配置信息拉取和解析能力:

各产品只须要集成了 ZEGO Settings SDK 就领有了对立的配置信息拉取、解析、配置变更告诉能力,下层产品依据告诉自行决定是否立刻失效。

2、动静获取配置信息:

客户端通过 ZEGO Settings SDK 将用户环境信息发送给配置服务 (云控服务),配置服务依据用户环境信息计算返回定制化的、无冗余的客户端配置信息;客户端信息也能够依据用户或者用户所在地区、操作系统、机型等维度进行灰度上线。

3、牢靠的寰球接入的通信链路:

客户端通过 ZEGO 自研的智能路由 MSDN 零碎,依靠支流云商的寰球节点,寰球 200+ 机房部署无死角笼罩,保障了配置服务(云控服务)寰球牢靠稳固的拜访通信链路。

4、分布式

云服务的配置信息存储节点 220+,任一节点有异样,其余节点都能迅速补上,保障了配置信息存储服务的高可用。

通过以上几个方面解决了配置文件动态化的需要,保障了最好的用户体验同时,进步了开发、日常配置管理效率,同时为实时解决单个用户环境问题提供了可能性。

总结

以上是对于 ZEGO 即构科技如何反对动态化的下发客户端配置零碎的内容分享。

通过云控系统解决了用户级别的客户端个性化配置,为保障最佳的客户端用户体验提供了保障。

此外,ZEGO 自研客户端配置管理系统反对多产品多模块的客户端配置信息管理,进步了各产品模块客户端配置信息的治理能力,为疾速解决客户的线上问题提供了可能性。

退出移动版