Общий ресурс транзакций Apache Camel

У меня есть приложение Spring-Camel, поддерживаемое Mysql+Hibernate на Tomcat. Я пытаюсь реализовать маршрут транзакций, который использует встроенную очередь ActiveMQ, создает некоторую базу данных на основе проверки дубликатов и создает другую встроенную очередь ActiveMQ.

Для обеспечения транзакционности я использую Шаблон общего ресурса транзакции. И Hibernate sessionFactory, и ActiveMQ BrokerService JDBCPersistenceAdapter используют один и тот же источник данных.

Конечные точки Camel используют HibernateTransactionManager (PROPAGATION_REQUIRES_NEW). Кажется, это работает, но я хочу уточнить, является ли это пуленепробиваемым подходом в случае сбоя системы, сбоя,

Нужно ли переходить на jta, 2PC?


person cra6    schedule 03.11.2012    source источник


Ответы (1)


Продолжаем с XA (Atomikos)

person cra6    schedule 17.12.2012
comment
Возможно, было бы полезно, если бы вы представили обоснование этого решения. Например. Преимущества XA по сравнению с другими продуктами. - person Ren; 17.12.2012
comment
Низкая производительность для JDBCPersistenceAdapter. Перейдите к автономному хранилищу для ActiveMQ (KahaDB). Для этого сценария xa — единственный способ обеспечить транзакционность. Не используйте контейнер для джи, поэтому атомикос кажется единственным способом. - person cra6; 23.12.2012