某些应用程序需要非常快的响应,以满足他们对用户的期望。我正在构建一个这样的应用程序,并且正在使用mnesia
。现在,当我们by-pass
MNESIA交易经理时,我们会取得良好的性能。但是,这是一个问题:
我们需要将此数据库复制为load balancing
的一部分,毕竟,Mnesia为我们进行了复制。我们在此应用程序中使用ONLY
dirty
操作。我们使用async_dirty
上下文有几个部分。我想知道,如果我们不在此规模上使用transaction
上下文,MNESIA复制会受到影响吗?
始终在记录上发生过多的dirty
操作,所以我想知道是否在side B
副本上提出的请求是否会发现side A
Replica刚刚通过肮脏操作进行的更改?
根据Mnesia用户指南:
-
async_dirty
活动"将等待在一个节点上执行操作,而不是其他节点"。 - 用于
sync_dirty
活动:"呼叫者将等待所有活动副本执行更新"。