我们知道当只有一个JVM但是如果有多个JVM时,同步关键字可以工作,这意味着JVM的实例超过1个,那么在这种情况下我们如何实现线程安全呢?
给定,每个容器创建自己独立的实例。假设我有3个单独的jvm实例,并且这些实例在同一个帐户上进行一些交易信用或借记,那么我如何使这些交易序列化或原子化或互斥。谁能说出最好的方法?
答案 0 :(得分:0)
由于JVM提供的Synchronized关键字和Lock仅适用于独立应用程序,因此您无法使用这些技术在群集中保持线程安全。
执行此操作的一般方法,或最简单的方法是由关系数据库提供的事务。
或者你可以使用其他技术来实现分布式锁,据我所知你可以使用Zookeeper,Redis来实现它。