one-api 在Redis下,每秒60+的请求并发可能会导致前十几个响应码为500,

snvhrwxg  于 4个月前  发布在  Redis
关注(0)|答案(6)|浏览(168)
例行检查

* 我已确认目前没有类似 issue
* 我已确认我已升级到最新版本
* 我已完整查看过项目 README,尤其是常见问题部分
* 我理解并愿意跟进此 issue,协助测试和提供反馈
* 我理解并认可上述内容,并理解项目维护者精力有限,**不遵循规则的 issue 可能会被无视或直接关闭**

问题描述
启用了BATCH_UPDATE_ENABLED和REDIS,1秒次60请求一切正常,超过60请求/秒会导致前十几个响应码为500,而上游日志显示实际响应全部为200,
另外需要增加一个变量,可以开启或关闭缓存数据库额度到redis,避免高并发请求数据库额度导致数据库挂掉。

复现步骤

![](//img.saoniuhuo.com/images/202407/80871721629700164.jpg)

日志如下
 [redis并发500状态码bug日志.txt](https://github.com/songquanpeng/one-api/files/12515384/redis.500.bug.txt)

预期结果
修复
另外需要增加一个变量,可以开启或关闭缓存数据库额度到redis,避免高并发请求数据库额度导致数据库挂掉。
3mpgtkmj

3mpgtkmj1#

缓存未更新不算 bug,等待缓存同步。

0aydgbwb

0aydgbwb2#

在之后更新时,主动删除缓存,强制使其刷新。

qnyhuwrf

qnyhuwrf3#

缓存未更新不算 bug,等待缓存同步。
新 bug:开启 Redis 后自动关闭十个渠道,共发送七八十个邮件。即使第一时间手动关闭渠道也不行,重试次数也远超过设置的 2 次。必须立即删除渠道才能终止发送(实测多次都这样)。
日志如下:

[超重试与邮件通知bug.txt](https://github.com/songquanpeng/one-api/files/12525154/bug.txt)
liwlm1x9

liwlm1x95#

没贴上来
好了。

vi4fp9gy

vi4fp9gy6#

当第4、5个渠道自动关闭时,我立即禁用了这10个渠道并删除了它们,这47封邮件就是当时产生的。

相关问题