关于并发
对于机器人来说,无非是调用网络上的API
来请求各种文字、语言或图片资源。但是由于对方服务的质量参差不齐,很难保证一个API接口
就能快速、稳定地返回想要地内容。
由于并发
和异步
并不冲突,所以同时并发请求多个同类型API
,把最快相应的内容返回是一个优化的思路。
例子
TODO(先鸽着,当然你也可以去看看源代码中“看看”这个搜索图片的实现)
关于缓存
在机器人会发送大量重复的文字、语言或图片资源时,缓存
或者预缓存
会特别有用,例如:每日日历、每日天气、emoji合成、获取壁纸、笑话、柴郡表情包等。
这些功能完全独立于用户,因此从网络资源下载后保存在本地,需要时直接检索本地内容后发送,会大幅提升响应速度。
例子
TODO