Я хотел бы сделать осознанный выбор в отношении простой архитектуры публикации/подписки.
Итак, мне интересно: , что добавляет Service Bus, что MSMQ не может сделать?
Каковы недостатки служебной шины?
спасибо для просветления меня!
Ответ 1
Основное функциональное различие заключается в том, что служебная шина предоставляет из коробки поддержку семантики обмена сообщениями, такую как маршрутизация по темам через публикацию-подписку.
MSMQ, с другой стороны, представляет собой легкую систему массового хранения и пересылки, которая поддерживает однонаправленную передачу сообщений "точка-точка".
Если вы смотрите на фреймворки pub-sub, тогда популярный на данный момент (свободный в однопоточном режиме) NServiceBus, который сидит поверх MSMQ, хотя и имеет swap-способный транспорт.
Ответ 2
Pros
Сервисная шина позволяет публиковать сообщения по tcp и http, которые являются крутыми, и дает вам больше
Развязка.
Service Bus - это база данных sql, поэтому ваше аварийное восстановление проще, и намного дешевле реализовать.
Против
Сервисная шина централизована, а MSMQ объединяется, поэтому потенциально более масштабируема. Хотя вы можете масштабировать с большим количеством узлов в WSB.
Перед публикацией вам необходимо подключиться к центральной шине. Таким образом, MSMQ, объединенный (на каждой машине), делает его более доступным для клиентов.
Однако люди используют MSMQ в качестве локального хранилища с Service Bus, поэтому публикуют локально, а затем перенаправляют его на шину, когда доступно соединение.
На данный момент у нас есть хороший опыт работы с Service Bus, а не MSMQ.