app 初始化时需要通过接口获取上千个独立的配置项,如何优化?

2024-09-02 10:33:02 +08:00
 aboutboy

正在开发一个 app ,用户在使用 app 访问服务时,需要根据对应的服务从后端获取对应的配置文件( json 格式)。

一共有上千个独立的配置项。

目前是当 app 第一次启动时,会首先通过接口查询配置项清单,然后再依次对各配置项进行请求获取。

这样的问题是,一个 app 就会向后端发起上千个请求。而且可能需要十来分钟甚至更长时间才能把全部配置拉下来。

这样一方面对后端服务器造成压力,另一方面影响用户体验。

如果把配置全部打包在一起的话,大概40-50MB左右。

有些配置项还会更新,这就需要app 在后续的运行过程中对有更新的配置项进行更新

请问大佬们有什么好的思路?

11981 次点击
所在节点    程序员
106 条回复
inhzus
2024-09-03 10:03:31 +08:00
这设计太逆天了
1. 收归所有配置到一个服务,于是只有一个或个位数个请求或渐进式
2. 版本号,每次只拉增量
3. 关键的配置启动时就拉,不关键的配置按需拉
4. 有条件还可以做推送
Hongwu
2024-09-03 10:05:06 +08:00
难道不下载这些配置 app 就不能用了吗,解决思路,端上兜底配置+异步增量更新,并且有些配置读不到下次生效也没问题,配置总有优先级,高优的先拉去
sdushn
2024-09-03 10:36:29 +08:00
diff 来获取呢? 40M 的配置有点离谱
rainABC
2024-09-03 14:13:45 +08:00
怎么跟我们一样,首次打开小程序直接批量后端获取了三百个配置参数。
chloerei
2024-09-03 17:43:20 +08:00
增加一个 Mobile App Backend ,统一处理 App 发起的请求和维护后台配置,解决问题并且增加就业。
ic3z
2024-09-04 08:00:06 +08:00
写一个 api 的 api 聚合加载配置。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1069523

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX