2010-09-10 2 views
1

Я пытаюсь расширить Clojure, чтобы добавить долговечность в refs таким образом, чтобы пользователи могли выбирать, какие экземпляры хранилища данных будут сохраняться. Для этого требуются распределенные транзакции. Существуют ли действительно легкие, распределенные операционные менеджеры в процессе, поддерживающие XA, для Java? Если нет, и мне нужно сворачивать самостоятельно, есть ли хорошие ресурсы, объясняющие, что должен поддерживать координатор распределенных транзакций? В частности, у меня возникли проблемы с пониманием того, что действительно означает семантика трех частей XID. В качестве начальной реализации я использую BDB JE.Легкий внутрипроцессный распределенный менеджер транзакций для Java?

ответ

3

Я знаю, что эти два:

  • Bitronix: Это один мы используем в настоящее время, кажется, работает нормально и легко настроить.

  • Atomikos: Мы пробовали это, но настроить его немного сложнее, чем Bitronix, и у него есть некоторые жестко закодированные зависимости к java.util.logging, которых мы не хотели. Он должен быть более функциональным, чем Bitronix, поскольку он представляет собой версию с открытым исходным кодом коммерчески поддерживаемого продукта.

+0

Я должен был быть ясным и указано, что DB будет находиться в том же процессе. К сожалению, эти решения поддерживают только JDBC. Похоже, мне придется сворачивать. Благодаря! – alyssackwan

+1

Посмотрите http://db.apache.org/derby/papers/DerbyTut/embedded_intro.html – gpeche

Смежные вопросы