发生ConcurrencyException时会写什么?

时间:2015-05-14 09:34:10

标签: concurrency ravendb

我们在生产环境中使用RavenDB。它存储了数百万份文档,并在白天不断更新。

我们使用循环策略对两个盒进行负载平衡,这些策略可以相互复制。

每周左右,我们都会从Raven获得ConcurrencyException。据我所知,这基本上意味着其中一个服务器被告知在短时间内插入或更新同一文档 - 这有点像冲突异常,除非发生在同一台服务器而不是两台复制服务器上。

发生此错误时会发生什么?我可以假设至少有一次写入成功吗?我可以预测哪一个?我能做些什么来减少这些例外的可能性吗?

1 个答案:

答案 0 :(得分:1)

ConcurrencyException意味着在单个服务器上,您可以在同一时刻对同一文档进行两次写入。

导致:

  • 接受一次写作。
  • 拒绝一次写入(并发异常)。