我们目前正在将 Hangfire 与 MSSQL 一起使用,并希望通过迁移到 Redis 来提高我们任务的吞吐量。
通过 key-hash 进行分片(分区)非常简单、可扩展且易于维护。我们目前无法访问 Redis 集群。因此,我们要满足两个要求:
- 通过配置文件将 Redis 服务器列表传递给 Hangfire。
- 让任何给定的密钥可预测地转到任一服务器(类似于 Memcached)
这样我们就可以在“n”个 Redis 服务器之间分配任意数量的作业。
我意识到 Hangfire 有两个部分:存储和工作。我很好奇这两个组件如何在 Redis 分片环境中工作。
我意识到 Twemproxy 等第三方组件有助于解决这些问题,但由于密钥散列方法非常简单,我想我会在实施 Twemproxy 之前用尽这条途径。
谢谢!