Sidekiq 与连接到不同 Redis 实例的工作人员
Posted
技术标签:
【中文标题】Sidekiq 与连接到不同 Redis 实例的工作人员【英文标题】:Sidekiq with workers connecting to different Redis instances 【发布时间】:2022-01-23 20:45:50 【问题描述】:在我当前的项目中,Heroku 上有一个 Redis 实例,Sidekiq 被配置为处理来自该实例的作业。我们需要将 Redis 实例迁移到 Azure,我想使用一个配置,其中一个 Worker 连接到 Heroku 上的 Redis 实例来处理任何排队的作业,其余的 Worker 连接到 Azure 上的新实例以避免任何数据丢失。
我是 Rails 和 Sidekiq 的新手。请提出一种实现所需配置的方法
【问题讨论】:
在此处查看文档:devcenter.heroku.com/articles/heroku-redis#connecting-to-redis ...您可能需要考虑使用 Redis Cloud:redis.com/redis-enterprise-cloud/overview Sidekiq 的创建者 Mike Perham 回复了这个帖子,这可能会有所帮助:***.com/questions/63020554/… 【参考方案1】:docs say,您可以运行此命令来获取凭据:
heroku redis:credentials
然后获取连接字符串:
heroku config:get REDIS_URL -a example-app
然后你可以使用REDIS_URL
的连接字符串对外连接一下。
【讨论】:
我想以编程方式执行此操作。有没有办法可以设置 sidekiq 客户端/服务器配置,以便新作业排队到新的 Redis 服务器,同时可以从旧的和新的 Redis 服务器处理作业? @DogEatDog以上是关于Sidekiq 与连接到不同 Redis 实例的工作人员的主要内容,如果未能解决你的问题,请参考以下文章
Docker-compose 与 redis、sidekiq、rails SocketError
与连接到同一个公共热点的所有用户聊天的 Android 聊天应用程序
QThread 线程间通信:连接到 &QThread::quit 与连接到 lambda [&thread] thread->quit(); 的奇怪行为
redis 尝试连接到 Heroku 中的本地主机 - 为啥?
FirebaseInstanceId.getInstanceId()与连接到iPhone WearOS设备上SERVICE_NOT_AVAILABLE失败