Насколько я знаю, обычное поведение автобусов, включая Rebus, создает новый обработчик для каждого сообщения, которое приходит и сопоставляется. Это нормально в большинстве случаев, но иногда есть дорогостоящие обработчики инициализации (потребуется для создания прокси-служб служб, соединений, загрузки объектов в кеш и т. Д.). Есть способ кэшировать эти обработчики, как только они создаются в первый раз, в идеале один экземпляр на одного работника, чтобы не создавать их снова и снова?Rebus и обработчики с дорогостоящей инициализацией/созданием
1
A
ответ
1
Если у вас есть что-то, что требует много времени для инициализации, я предлагаю вам использовать свой контейнер IoC для его инъекции, настройки образа жизни в соответствии с вашими потребностями - с помощью Castle Windsor, я обычно настраиваю дорогостоящие услуги, чтобы быть одиночными, если они реентерабельный или привязанный к текущему потоку, если это не так (что приведет к созданию одного экземпляра для рабочего потока Rebus).
Ваши варианты могут отличаться в зависимости от того, какой контейнер IoC вы используете, но все контейнеры должны быть в состоянии это сделать.
Смежные вопросы
- 1. Rebus и удаленные очереди
- 2. Rebus и RavenDB
- 3. Настройка саблей Rebus с UnitOfWork
- 4. Rebus и RabbitMQ - Используйте несколько независимых экземпляров Rebus?
- 5. Ребус Windsor контейнеров и inlinemessage обработчики
- 6. Rebus Как узнать, какие обработчики имеют успех и что вызвало исключение, когда сообщение улавливается несколькими обработчиками
- 7. Rebus FileSystemMessageQueue
- 8. Является ли тригонометрия вычислительно дорогостоящей?
- 9. Параллельное выполнение вычислительно дорогостоящей карты
- 10. Является ли DbContext дорогостоящей операцией?
- 11. Безопасная резьба Rebus
- 12. Выполнение дорогостоящей операции по очистке
- 13. Rebus Newbie Questions
- 14. Rebus: Объединение пабов/подпрограмм и запросов/ответов
- 15. Rebus - несколько транспортов
- 16. Pub/sub с прочными сообщениями с Rebus
- 17. Rebus - отправить команду и ждать обработчиков
- 18. Rebus - Аудиторская очередность и срок действия
- 19. Конфигурация Rebus для Nlog
- 20. Мост между приложениями Rebus и NServiceBus
- 21. Проблемы с сериализацией с использованием Rebus
- 22. Централизованное хранилище Rebus MSMQ
- 23. Что происходит с сообщениями с ошибкой Rebus
- 24. GWT Mvp и обработчики
- 25. Обработчики событий и циклы
- 26. Rebus автоматически отписывается?
- 27. Тестирование Sagas в Rebus
- 28. SendAsync в Rebus
- 29. Обработчики Android и Asynctask
- 30. ObservableCollection и Обработчики