V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
aboutboy
V2EX  ›  程序员

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

  •  
  •   aboutboy · 2024-09-02 10:33:02 +08:00 · 11819 次点击
    这是一个创建于 369 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

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

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

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

    106 条回复    2024-09-04 08:00:06 +08:00
    1  2  
    inhzus
        101
    inhzus  
       2024-09-03 10:03:31 +08:00
    这设计太逆天了
    1. 收归所有配置到一个服务,于是只有一个或个位数个请求或渐进式
    2. 版本号,每次只拉增量
    3. 关键的配置启动时就拉,不关键的配置按需拉
    4. 有条件还可以做推送
    Hongwu
        102
    Hongwu  
       2024-09-03 10:05:06 +08:00
    难道不下载这些配置 app 就不能用了吗,解决思路,端上兜底配置+异步增量更新,并且有些配置读不到下次生效也没问题,配置总有优先级,高优的先拉去
    sdushn
        103
    sdushn  
       2024-09-03 10:36:29 +08:00
    diff 来获取呢? 40M 的配置有点离谱
    rainABC
        104
    rainABC  
       2024-09-03 14:13:45 +08:00
    怎么跟我们一样,首次打开小程序直接批量后端获取了三百个配置参数。
    chloerei
        105
    chloerei  
       2024-09-03 17:43:20 +08:00
    增加一个 Mobile App Backend ,统一处理 App 发起的请求和维护后台配置,解决问题并且增加就业。
    ic3z
        106
    ic3z  
       2024-09-04 08:00:06 +08:00 via iPhone
    写一个 api 的 api 聚合加载配置。
    1  2  
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2711 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 14:54 · PVG 22:54 · LAX 07:54 · JFK 10:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.