NServiceBus 4 и DTC
Я смотрю на обновление нашей системы NServiceBus 3.3.3 до версии 4.
Я прочитал несколько сообщений, которые, кажется, указывают, что версия 4 может работать без DTC. Это правда?
По сути, это то, что я собираюсь сделать:
- Изменение моих обработчиков, чтобы иметь возможность обрабатывать дубликаты сообщений
- Обновление до версии 4 NServiceBus
- Отключение DTC в моей базе данных
Из того, что я прочитал, я должен быть в состоянии сделать это и не потерять ни одного сообщения. (Я работаю в медицинской компании, и потеря сообщения означает, что мы теряем данные пациента (очень и очень плохо).)
Единственное, что следует отметить, это то, что моя система работает с дистрибьютором, который затем дает работу нескольким работникам. Сообщение через put является массовым (я надеюсь, что удаление кода DTC улучшит пропускную способность).
Как примечание стороны, это было бы немного иначе, если бы я переключился с MSMQ на RabbitMQ?
1 ответ
Просто используйте это в вашей конфигурации хоста:
Configure.Transactions.Disable();
Но не забудьте правильно обработать все ваши ошибки и откатить все открытые транзакции вручную.