多个并发程序在同一哈希键上执行读/删除操作时的Redis行为

我有一个程序(program_1)(基于Jedis KEY_1),它定期写入Redis

HASH()。我还有一个program_2定期执行的程序()(独立的JVM进程),在Redis事务中执行以下操作:

        Transaction transaction = redis.multi();

//get the current entity table

Response<Map<String, String>> currentEntityTableResponse = transaction.hgetAll(KEY_1);

transaction.del(KEY_1);

transaction.exec();

我的假设是,当program_2在下一次运行program_1时删除HASH(带有KEY_1)时,它将再次创建HASH。这样对吗 ?

回答:

是。Redis是单线程的,事务会阻塞直到它们完成为止,因此,如果program_2启动,则当program1再次运行时,哈希KEY_1将不再存在。

以上是 多个并发程序在同一哈希键上执行读/删除操作时的Redis行为 的全部内容, 来源链接: utcz.com/qa/419558.html

回到顶部