我们有75台(并且正在不断增长)服务器需要通过Redis共享数据。理想情况下,所有75台服务器都希望通过操作写入Redis中的两个字段INCRBYFLOAT。我们预计最终在这两个领域上可能有数百万次的每日写入操作和数 十亿次 的每日读取。此数据 必须 是持久性的。
INCRBYFLOAT
我们担心,Redis锁定可能会导致多次重试写入操作,而同时尝试增加同一字段的次数。
问题:
Redis不会锁定。同样,它是单线程的;因此没有比赛条件。读或写不会阻塞。
您可以INCRBYFLOAT在同一个键上运行数百万个,而不会出现任何问题。无需外部流程。读取这些字段不会造成任何问题。
也就是说,“数以百万计的两个键更新”听起来很奇怪。如果您可以解释用例,则可能在Redis中有更好的方法来处理它。