【问题标题】:Redis like a databaseRedis 就像一个数据库
【发布时间】:2020-12-13 15:09:07
【问题描述】:

我们有一个独立配置的 redis,我正在使用 lettuce 来连接它。当我们有一个用户访问redis数据库时,结果api很快,大约700ms,但是当我们有超过5个用户使用这个访问redis数据库的api时,时间增加了1或2秒以上。 如何保证许多用户使用我的 api 而不会损失性能时间?

PS:我们有一个没有池或显式阻塞操作的 java API (Spring boot) + lettuce + JPA。我们只有 findBy 操作,可能这个 API 将访问大约 30000 个用户

【问题讨论】:

    标签: java redis lettuce


    【解决方案1】:

    尝试增加最小空闲连接池和活动连接池。如下所示:

    lettuce:
      pool:
        max-active: 64
        max-idle: 64
        min-idle: 16
    

    尝试根据您的基础架构和需要微调这些值。您可能必须为生菜添加连接池依赖项,因为默认情况下它可能不会出现。类似commons-pool2

    【讨论】:

    • 我试过做这个配置,但它不起作用。我做错了什么?我已经将我的测试项目上传到:github.com/tiagoedez/redis-lettuce-pool-test
    • 您是否能够查看数据是否确实保存在您的 redis 服务器上?您可以通过 redis-cli 进行交叉检查。此外,检查您的系统配置为 700 毫秒,对于仅获得 1 个请求的本地 redis 实例仍然太慢。您的 redis 服务器是否有足够的资源可用?
    • 嗨 Ady 我有一个实例 aws,这个 redis-lettuce-pool-test 第一篇文章在 143 毫秒内返回所有帖子数据后在 1.3 秒内返回。但是游泳池仍然无法使用
    猜你喜欢
    • 2014-02-16
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    • 1970-01-01
    • 2020-03-26
    • 2021-07-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多