Я пытаюсь использовать Topshelf для создания конечной точки Rebus, которая будет работать как служба. Как это должно быть настроено и есть ли какие-нибудь примеры?Как настроить конечную точку Rebus для запуска как службы
1
A
ответ
2
Вы можете взглянуть на Rebus samples repository, где integration service sample в частности показывает, что вы после.
Как вы можете видеть в Program.cs, он использует Topshelf, чтобы в основном просто держаться за контейнер Windsor, который он имеет при закрытии приложения.
Замок Виндзор installer syntax вызывает установщик автоматически травление, где RebusInstaller показывает, как вы обычно пусть Ребус вводят себя в контейнер, а HandlerInstaller показывает, как можно добавить обработчик в контейнер.
Для использования другого контейнера достаточно легко адаптировать образец - просто не забудьте утилизировать его, когда приложение выключится, что дает возможность Rebus завершить обработку обрабатываемых сообщений и остановить рабочие потоки.
Спасибо Могенам, это именно то, что я был после. В последнее время мой поиск-fu ослабевает! ;) –