是按响应的到期时间( 7200 秒)呢?
还是定时 X 分钟就刷新一次?
还是基于 memcached 或 redis 一类的自动缓存失效就去获取新的?
还是定时 X 分钟就刷新一次?
还是基于 memcached 或 redis 一类的自动缓存失效就去获取新的?
|
blessyouNov 4, 2017 via Android
1
存一个过期时间。 如果请求时间超过过期时间 ,就取新的并覆盖原来的值和过期时间,如果请求时间没超过过期时间,就取历史值
|
|
qiayueNov 4, 2017
2
存数据库( MySQL、memcached、redis 皆可),同时保存过期时间
每次获取的时候,查看过期时间 如果某次使用发现剩余时间小于 600 秒(或 1000 秒),则去获取最新,并保存,更新过期时间 |
|
3
|
|
shinyNov 4, 2017
4
另外提醒下:如果 Token 没有统一管理,会出现 7200s 没有到的情况下就已经过期了。需要注意处理异常。
|
|
shinyNov 4, 2017
6
@oh 是的。翻了下微信的文档,描述的应该是比较详细了。https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183
|
|
alex321Nov 4, 2017 via Android
9
7000s,所有服务共享。
|
|
10
|
|
wdlthNov 4, 2017
11
用的单独服务进行刷新,用消息系统来获取。
|
|
carlcloneNov 4, 2017 via Android
12
用的 easywechat 之后没管过这些问题, 内部就有实现,有兴趣可以看看
|
|
carlcloneNov 4, 2017 via Android
13
好像默认是文件缓存,可以实现 Redis driver
|
|
iyaozhenNov 5, 2017 via Android
14
并发不高存文件都行,发现过期了再去获取。重复获取问题也不大,值又不会变。
|