V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yhhsuf
V2EX  ›  React

手机 app 调用 API 的问题.

  •  
  •   yhhsuf · 2021-06-23 15:10:33 +08:00 · 1502 次点击
    这是一个创建于 1260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自己娱乐瞎写写手机 App, 需要用到汇率. 就打算在网上找个汇率 API 用. 但想到一个问题.

    假如手机 app 被一百个人用, 那这一百个人没人做 10 个 call, 那不就是一天一千次了? 因为 app 在终端用户手上, 也没法限制他们究竟 call 了多少次, 是不是很容易服务器费用被薅爆?

    求问, 先谢过!

    9 条回复    2021-06-23 19:35:54 +08:00
    irytu
        1
    irytu  
       2021-06-23 15:12:15 +08:00 via iPhone
    不能 cache 起来么? HTTP caching
    Puteulanus
        2
    Puteulanus  
       2021-06-23 15:33:55 +08:00
    还好吧,每个请求就算 1M 数据,一天不也就 1G,一个月 30G 流量
    实际上汇率这种都是数据的一次应该不会超过 100kb 吧
    xing7673
        3
    xing7673  
       2021-06-23 15:40:23 +08:00 via iPhone
    那股票软件岂不是要爆炸。
    实际上文本流量总体容易控制。
    yhhsuf
        4
    yhhsuf  
    OP
       2021-06-23 15:49:44 +08:00
    @irytu @Puteulanus @xing7673
    说的也对, 多谢. 就怕发生一觉醒来房子归移动的惨案
    devswork
        5
    devswork  
       2021-06-23 15:51:43 +08:00
    你服务器定时(例每 5 分钟)请求汇率一次,存到你自己的 mysql 或者 redis,每个用户请求你自己的汇率 API,不就不走网上汇率 API 了。用户本地也可以缓存从服务器拉取的汇率,缓存有效期做短点,具体看业务要求的实时程度。如果服务器为了防止频繁刷接口,那就在服务器端做限流,超出访问速率阈值的返回错误即可。
    brader
        6
    brader  
       2021-06-23 15:53:54 +08:00   ❤️ 1
    brader
        7
    brader  
       2021-06-23 15:54:05 +08:00
    这个挺好用的,可以试试
    learningman
        8
    learningman  
       2021-06-23 15:56:20 +08:00
    你自己反代 API,做个缓存不就好了,这公共数据
    potatowish
        9
    potatowish  
       2021-06-23 19:35:54 +08:00 via iPhone
    加一层缓存,很多问题通过中间代理的模式的就能解决
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3375 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:44 · PVG 19:44 · LAX 03:44 · JFK 06:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.