Обзор возможностей NServiceBus

Содержание

Слайд 2

Обзор возможностей NServiceBus Евгений Шапиро Lead Developer Mercury Development

Обзор возможностей NServiceBus

Евгений Шапиро
Lead Developer
Mercury Development

Слайд 3

Общее Сервисная шина NServiceBus www.nservicebus.com Автор – Udi Dahan http://www.UdiDahan.com MSMQ

Общее

Сервисная шина NServiceBus www.nservicebus.com
Автор – Udi Dahan http://www.UdiDahan.com
MSMQ

Слайд 4

Архитектура взаимодействия Сервис 1 Сервис 2 Сервис N bus.dll bus.dll bus.dll

Архитектура взаимодействия

Сервис 1

Сервис 2

Сервис N

bus.dll

bus.dll

bus.dll

Слайд 5

Шаблоны взаимодействия Однонаправленное сообщение (One-way) Запрос/ответ (RPC) Дуплексный обмен (Full-duplex) Издатель/подписчик (Pub/Sub)

Шаблоны взаимодействия

Однонаправленное сообщение (One-way)
Запрос/ответ (RPC)
Дуплексный обмен (Full-duplex)
Издатель/подписчик (Pub/Sub)

Слайд 6

Использование Клиент Сервер Сервис 2 Сервис N Команда Статус Событие

Использование

Клиент

Сервер

Сервис 2

Сервис N

Команда

Статус

Событие

Слайд 7

Подписчики Пример Кредитование- клиент Кредитование- сервис Зарегестрировать Нового Клиента Успешно Безопасность

Подписчики

Пример

Кредитование- клиент

Кредитование- сервис

Зарегестрировать
Нового Клиента

Успешно

Безопасность

Риски

Юристы

Залоговики

Новый Клиент Зарегестрирован

Слайд 8

Сообщение public class HelloWorldMessage : IMessage { public string Name { get; set; } }

Сообщение

public class HelloWorldMessage
: IMessage
{
public string Name
{
get; set;


}
}
Слайд 9

Цикл обработки сообщений Служба Входная очередь Message Handler 1 (IHandleMessages )

Цикл обработки сообщений

Служба

Входная очередь

Message Handler 1 (IHandleMessages<>)

БД

Message Handler 2

Message Handler 3

Обработка сообщения
происходит

в транзакции
Слайд 10

Отправка и обработка сообщений Демонстрация

Отправка и обработка сообщений

Демонстрация

Слайд 11

Издатель/подписчик Издатель Подписчик 1 Подписчик 2 1 Отправка сообщения подписки Сохранение

Издатель/подписчик

Издатель

Подписчик 1

Подписчик 2

1

Отправка сообщения подписки
Сохранение подписки
Получение адресов подписчиков
Отправка сообщения каждому из

подписчиков

Хранилище

2

3

Bus.Publish(msg)

4

Слайд 12

Издатель/подписчик Демонстрация

Издатель/подписчик

Демонстрация

Слайд 13

Сага Сага координирует множество сообщений Привязана к сущности (обычно) Имеет состояние

Сага

Сага координирует множество сообщений
Привязана к сущности (обычно)
Имеет состояние

Слайд 14

Гибкий хост сервисов Запуск Консольное приложение Служба Встроенные профили Lite (Debug)

Гибкий хост сервисов

Запуск
Консольное приложение
Служба
Встроенные профили
Lite (Debug)
Integration
Production
Возможность писать свои профили

Слайд 15

Дистрибьютор Распределяет нагрузку Выступает как логический подписчик Делегирует работу нескольким машинам Горизонтальное масштабирование

Дистрибьютор

Распределяет нагрузку
Выступает как логический подписчик
Делегирует работу нескольким машинам
Горизонтальное масштабирование

Слайд 16

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista

and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.