Mixcm Avatar Cache 使用文档

Author Avatar
黎明余光 10 月 28 日

这里是一份说明文档,该项目目前由我维护

介绍

用于对公共头像源的缓存加速,目前支持 QQ 头像与 Gravatar
服务域名:avatar.mixcm.cn / avatar.lim-light.com
两者无实际区别,推荐使用前者

使用

QQ

调用方式:GET
请求:https://avatar.mixcm.cn/qq/{$qqnum}?s={$size}(注:此处 $size 与官方源中的 s 效果一致)
示例:https://avatar.mixcm.cn/qq/776194970?s=100

QQExample QQExample2

Gravatar

调用方式:GET
请求:https://avatar.mixcm.cn/gravatar/{$mailmd5}?s={$size}&d={$d}(注:此处参数与官方源中参数效果一致,并且非所有参数可用)
示例:https://avatar.mixcm.cn/gravatar/605f8c6c64b8fcd514a0b53c6cc3680c?s=100
https://avatar.mixcm.cn/gravatar/941103ea99514f7c0f8c80df82563957?s=100&d=identicon

GravatarExample GravatarExample2

说明

所有缓存时间为 24 小时,超时将会 异步 更新缓存,此时仍会返回缓存中的数据
当请求参数中带有 refresh 时,此请求将会强制 异步 更新缓存,请不要滥用 refresh 参数

响应头中会带有 X-Cache-Status (e.g. X-Cache-Status: cached, 1509187846, October 28 2017 18:50:46.)
分别为缓存状态(cached refreshed uncached)、缓存时间( Unix 时间戳 )、缓存时间

FAQ

  • 为什么会有 QQ 头像缓存?QQ 官方源在国内不是很快吗?
  • A:因为官方源经常爆炸(响应被延迟,20s+,无规律,通常在过多请求时出现,首次请求也可能出现)

Changelog

2017.11.19

  • 再次修复一个潜在的缓存问题

2017.11.18

  • 修复了一个缓存的问题
  • 启用 Opcache
  • 现在会对 Etag 返回 304 了

2017.11.11

  • 完美解决一个异步问题 fastcgi_finish_request()
  • 错误修正和性能改进

2017.10.29