Микросервисы_ MassTransit PubSub
В этом видео покажу как можно делиться объектами DTO или ViewModel'ами между микросервисами используя nugeВ этом видео я покажу как можно построить перехватывать ошибки при отправки сообщений в очередь через MassTransit (RabbitMQ). Микросервисная архитектура буду строить на платформе ASP.NET Core 3.1. ключевые понятия: #микросервисы,#коммуникации,#microservices,#communications,#MassTransit,#RabbitMQ,#Send, #Subscribe,#aspnetcore,#Template,#Framework,#nuget, #ErrorHandling Задача на сегодня: Резервирование товаров на складе. 0.[02:11] Contracts: Создать контракт для передачи из OrganizationService в WarehouseService информации о резервировании товара в виде коллекции объектов со свойствами ProductId и Total. ReservationRequest и ReservationResponse. 1. [07:31] WarehouseService: Создать ReservationRequestConsummer для обработки запроса и зарегистрировать обработчик в MassTransit. 2. [09:17] OrganizationService: Создать метод резервирования товаров в AccountController, который будет отправлять заявку в WarehouseService на резервирование. 3. [18:13] Обработка исключения при передачи сообщений в очередь через MassTransit (RabbitMQ). Ссылки: MassTransit Exception http://masstransit-project.com/usage/exceptions.html Nimble Framework https://github.com/Calabonga/Microservice-Template Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thankstВ этом видео я покажу как можно построить общение между микросервисами при помощи паттерна PubSub/Subscribe. Для коммуникаций я буду использовать MassTransit (RabbitMQ). Микросервисная архитектура буду строить на платформе ASP.NET Core 3.1. Перед собой я ставлю следующие задачи: * Создать уведомление для микросервисов Warehouse и Configuration о том, что новый пользователь (ApplicationUser) успешно зарегистрирован в системе. * Указанные выше сервисы должны получить информацию об идентификаторе пользователя, а также фамилию и имя * Для коммуникации использовать MassTransit (RabbitMQ). * Применение паттерна Saga не требуется. 10 простых шагов для достижения цели: 1. [02:32] Создание микросервисов для * Organization API (IdentityServer Module) * Warehouse API (Module) * Configuration API (Module) 2. [06:27] Настройка подключения к базе данных * Organization API (IdentityServer Module) * Warehouse API (Module) * Configuration API (Module) 3. [14:21] Создание nuget-пакета Contracts (локально) 4. [17:33] Настройка RabbitMQ для подключений 5. [18:28] Установка nuget-пакетов для Masstransit 6. [19:55] Подключения к RabbitMQ (Gist) 7. [24:49] Создание контракта для коммуникации в сборке контракт 8. [27:48] Создание и регистрация подписчиков (Consumer) в Configuration и Warehouse 9. [35:09] Публикуем событие о регистрации 10. [44:00] Конфигурирование подписчика ключевые понятия: #микросервисы,#коммуникации,#microservices,#communications,#MassTransit,#RabbitMQ,#PubSub,#Publish,#Subscribe,#aspnetcore,#Template,#Framework,#nuget Ссылки: PubSub паттерн https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern Saga (Long-running transaction) https://en.wikipedia.org/wiki/Long-running_transaction Nimble Framework https://github.com/Calabonga/Microservice-Template Шаблон https://gist.github.com/Calabonga/bb79d857a01403bbe99417b8ef36adde Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thanks-сервер, который принадлежит именно вам. Покажу пример, как "поднять" свой nuget-сервер в докере. 00:00 Вступление 01:44 Пример реализации личного nuget-сервера через docker-контейнер #blazor, #calabonga, #DTO, #Shared, #microservice, #микросервисы, #communicaiton, #dockerfile, #docker Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thanks
В этом видео покажу как можно делиться объектами DTO или ViewModel'ами между микросервисами используя nugeВ этом видео я покажу как можно построить перехватывать ошибки при отправки сообщений в очередь через MassTransit (RabbitMQ). Микросервисная архитектура буду строить на платформе ASP.NET Core 3.1. ключевые понятия: #микросервисы,#коммуникации,#microservices,#communications,#MassTransit,#RabbitMQ,#Send, #Subscribe,#aspnetcore,#Template,#Framework,#nuget, #ErrorHandling Задача на сегодня: Резервирование товаров на складе. 0.[02:11] Contracts: Создать контракт для передачи из OrganizationService в WarehouseService информации о резервировании товара в виде коллекции объектов со свойствами ProductId и Total. ReservationRequest и ReservationResponse. 1. [07:31] WarehouseService: Создать ReservationRequestConsummer для обработки запроса и зарегистрировать обработчик в MassTransit. 2. [09:17] OrganizationService: Создать метод резервирования товаров в AccountController, который будет отправлять заявку в WarehouseService на резервирование. 3. [18:13] Обработка исключения при передачи сообщений в очередь через MassTransit (RabbitMQ). Ссылки: MassTransit Exception http://masstransit-project.com/usage/exceptions.html Nimble Framework https://github.com/Calabonga/Microservice-Template Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thankstВ этом видео я покажу как можно построить общение между микросервисами при помощи паттерна PubSub/Subscribe. Для коммуникаций я буду использовать MassTransit (RabbitMQ). Микросервисная архитектура буду строить на платформе ASP.NET Core 3.1. Перед собой я ставлю следующие задачи: * Создать уведомление для микросервисов Warehouse и Configuration о том, что новый пользователь (ApplicationUser) успешно зарегистрирован в системе. * Указанные выше сервисы должны получить информацию об идентификаторе пользователя, а также фамилию и имя * Для коммуникации использовать MassTransit (RabbitMQ). * Применение паттерна Saga не требуется. 10 простых шагов для достижения цели: 1. [02:32] Создание микросервисов для * Organization API (IdentityServer Module) * Warehouse API (Module) * Configuration API (Module) 2. [06:27] Настройка подключения к базе данных * Organization API (IdentityServer Module) * Warehouse API (Module) * Configuration API (Module) 3. [14:21] Создание nuget-пакета Contracts (локально) 4. [17:33] Настройка RabbitMQ для подключений 5. [18:28] Установка nuget-пакетов для Masstransit 6. [19:55] Подключения к RabbitMQ (Gist) 7. [24:49] Создание контракта для коммуникации в сборке контракт 8. [27:48] Создание и регистрация подписчиков (Consumer) в Configuration и Warehouse 9. [35:09] Публикуем событие о регистрации 10. [44:00] Конфигурирование подписчика ключевые понятия: #микросервисы,#коммуникации,#microservices,#communications,#MassTransit,#RabbitMQ,#PubSub,#Publish,#Subscribe,#aspnetcore,#Template,#Framework,#nuget Ссылки: PubSub паттерн https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern Saga (Long-running transaction) https://en.wikipedia.org/wiki/Long-running_transaction Nimble Framework https://github.com/Calabonga/Microservice-Template Шаблон https://gist.github.com/Calabonga/bb79d857a01403bbe99417b8ef36adde Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thanks-сервер, который принадлежит именно вам. Покажу пример, как "поднять" свой nuget-сервер в докере. 00:00 Вступление 01:44 Пример реализации личного nuget-сервера через docker-контейнер #blazor, #calabonga, #DTO, #Shared, #microservice, #микросервисы, #communicaiton, #dockerfile, #docker Благодарности и помощь каналу принимаются: https://www.calabonga.net/site/thanks
