首页 > 试题广场 >

在生产环境,我们常常要存储一些像服务参数、功能开关之类的键值

[问答题]

在生产环境,我们常常要存储一些像服务参数、功能开关之类的键值。传统的做法是把配置都写到文件里,然后同步到线上每台机器上。随着机器变多,配置文件变得难以管理,并且容易出现不一致的情况。我们希望设计一个配置服务来解决这个问题。

统一配置服务可能会存在以下问题:由于是非常核心的服务,如果存在单节点问题对服务可用性影响非常大;线上可能读取非常频繁,尽可能提供高性能的服务同时,也要考虑横向扩容能力;需要保证配置在期望的时间内下发与更新;

请设计一个存储服务,包含但不限于以下角色:服务端(可能由多个节点组成),客户端(读取、写入一个配置),其他(如旁路的监控等);

系统假设:

1、存储量都在1GB以内,单机内存可以存储下;

2、每秒写入在 1000 以内

3、每秒读取在 1000000 以上

4、使用尽量少的节点

5、无论什么时候,服务总是可以读写

6、允许故障期间读到老的配置数据

7、故障恢复后,数据保持同步

1.springcloud config 配置中心


发表于 2019-03-04 10:27:09 回复(0)