任何人都知道一般的交易地图|设置|名单

时间:2011-01-17 11:15:14

标签: java collections transactions

我能找到的唯一真正可用的库是Apache Commons Transaction Library

Apache Commons Transctions的问题

  • 2008年最后一次发布(3年)
  • 不通用
  • 依赖于日志记录f / w - 我们是否需要一个Map的记录器!?!
  • 我看到某处(doco),它不是XA。

功能ID

  • 可用的集合应该是通用的
  • 应该进行批处理,直到回滚(忘记所有更改)或提交。
  • 脏读等也应该是一个功能。
  • 线程无关,不同的线程应该能够参与不同的tx。
  • 观点也应该是交易 - 例如Map.entrySet()
  • XA会很好,因此集合实例可以参与两阶段提交。

4 个答案:

答案 0 :(得分:3)

我想,有点令人沮丧但很明显的答案是:

如果您需要数据库功能,为什么不使用数据库?

如果您使用内存解决方案(如HyperSonic(HSQL)),您几乎无需进行任何设置,并且您拥有内置的交易和许多其他功能

答案 1 :(得分:3)

Infinispan是一个完全支持XA的缓存,自版本4以来也是implements一个ConcurrentMap。

答案 2 :(得分:2)

也许JDBM符合你的账单?它具有事务性磁盘支持的集合实现。

答案 3 :(得分:0)

http://commons.apache.org/transaction/index.html提供了用于映射事务访问的包装器,包括事务级别,例如可序列化。