接触過api服务的朋友都知道很多api每天调取的次数是有限制的。那么,如果实际的业务需求中需要去频繁获取api返回的数据,这里存在重复的请求,也有不重复的请求。该怎么解决这个问题呢?

如图所示:



思路:

先查cache,查询到结果立即返回。

缓存查询不到结果,仅接着查询数据库。从数据库中取到结果立即返回,同时更新cache。

数据库查不多结果才调用API获取数据,返回结果。此时经过还要写入数据库,并更新cache。


优点:

使用cache机制,响应速度快(第一个访问者除外)

减少数据库的压力。

不做重复的api调取数据服务。