powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Внутреннее общение между микросервисами
25 сообщений из 106, страница 2 из 5
Внутреннее общение между микросервисами
    #39700033
love_bach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123love_bach,
замечательно что начали код приводить.
Для вашего кода не нужна ни асинхронность, ни микросервисы, ни очередь.
DTO передают на толстый клиент в котором своя бизнес логика.
Если общение и взаимодействие тесное то берут протокол повыше.
В шарпе это SOAP MS в виде WCF .
- Кроме того вы ТЗ на информационную систему SomeDTO напишите?
- SomeDTO это микросервис?
- Бизнес логика у вас где?
ЗЫ
В интернете ржут, что микросервисы у всех наслуху но никто в живую их не видел).
У меня впечатление, что вы их тоже не писали).
love_bachно хочется как-то красиво и просто чтобы было
Делите информационную систему по функционалу и по ГОСТ 34

куда-то Вас понесло не туда. мне требуется реализовать взаимодействие по моделям запрос/команда. как сейчас это реализовано я привел. в принципе меня это устраивает. но хочу попробовать это же сделать на основе очереди.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700034
love_bach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Кстати, я поражаюсь как MS смог упростить SOA / SOAP для прикладников.
Выше код есть. Ведь ничего по сути не надо делать и писать чтобы удаленный хост из Арктики не стал простейшим твои родным рядом.
Раньше я более скептически к soa относился.
Поэтому опять вопрос ТСу.
Занафига тут микросервисы?
Вы спутали межклассовое общение и микросервисы?

ничего я не спутал. на вопрос "Занафига тут микросервисы" отвечать за меня я не просил
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700040
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Кстати, я поражаюсь как MS смог упростить SOA / SOAP для прикладников.
Выше код есть. Ведь ничего по сути не надо делать и писать чтобы удаленный хост из Арктики не стал простейшим твои родным рядом.
Раньше я более скептически к soa относился.
Sprring Cloud пойдет еще дальше.
Из стека разработки уходят endpoints.
Уходят сетевые протоколы. Останутся
сущности мира functional programming.
Такие как supplier, consumer, function.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700042
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordмикросервисы не могут посылать команды и запросы друг другу непосредственно, все общение только через асинхронные очереди
Вы скорее всего путаете микросервисы с чем то другим.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700050
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
love_bachкуда-то Вас понесло не туда. мне требуется реализовать взаимодействие по моделям запрос/команда
https://www.google.ru/search?q=моделям запрос/команда&rlz=1C1GIGM_enRU733RU775&oq=моделям запрос/команда&aqs=chrome..69i57&sourceid=chrome&ie=UTF-8

love_bachничего я не спутал. на вопрос "Занафига тут микросервисы" отвечать за меня я не просил
конкретика и термины инженера будут или вы тут написали код в виде геттера и думает всё на этом?
Типа всё, можно обсуждать геттер на микросервисах.
Увы - сферический конь в вакууме(.
Мы не видим предмет обсуждения - микросервисы.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700052
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordмикросервисы не могут посылать команды и запросы друг другу непосредственно, все общение только через асинхронные очереди
ну это же чистая теория.
Например, как СУБД должна быть полностью нормализована.
А в реальности зачем мне в БЛ запрос модуля ОтделКадров что такой юзер ещё работает асинхронно?
Если говорить про шарп, то вызов асинхронный или синхронный определяется в одну строку.
Поэтому и вопросов нету.
Программист решает в каждой своей написанной строке.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700053
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное он имел в виду CQRS.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700058
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНаверное он имел в виду CQRS.
я только "за" такой термин) и ещё как можно больше вопросов с примерами кода от автора топика.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700064
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123А в реальности зачем мне в БЛ запрос модуля ОтделКадров что такой юзер ещё работает асинхронно?

у тебя не будет такого запроса в микросервисной архитектуре, ни синхронного, ни асинхронного, я еще раз повторяю что все общение микросервисов - это оповещения через асинхронные события, а не команды или запросы к друг другу. Если информация о том, работает юзер или нет нужна в другом микросервисе - то она там и будет находится. Почитай базовую теорию
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700067
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,
ну давай почитаем на пальцах:
1)Request-Response Model
2)Observer Model
Используем две модели? Так?
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700070
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,
я читал твои посты ранее. И они довольно интересны по практике.
Но тут думаю, что ты имел дело с шиной предприятия и ESB.
В микросервисах это антипаттерн.
Хотя любви к микросервисам я не испытываю.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700072
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordPetro123А в реальности зачем мне в БЛ запрос модуля ОтделКадров что такой юзер ещё работает асинхронно?

у тебя не будет такого запроса в микросервисной архитектуре, ни синхронного, ни асинхронного, я еще раз повторяю что все общение микросервисов - это оповещения через асинхронные события, а не команды или запросы к друг другу. Если информация о том, работает юзер или нет нужна в другом микросервисе - то она там и будет находится. Почитай базовую теорию
А поподробнее?
Вот есть у тебя микросервис аутентификации, через какие такие асинхронные события предлагаешь с ним общаться?
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700074
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рассмотрим пример отсюда: https://microservices.io/patterns/communication-style/rpi.html

There are numerous examples of RPI technologies

- REST
- gRPC
- Apache Thrift

RegistrationServiceProxy from the Microservices Example application is an example of a component, which is written in Scala, that makes a REST request using the Spring Framework’s RestTemplate:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
@Component
class RegistrationServiceProxy @Autowired()(restTemplate: RestTemplate) extends RegistrationService {

  @Value("${user_registration_url}")
  var userRegistrationUrl: String = _

  @HystrixCommand(commandProperties=Array(new HystrixProperty(name="execution.isolation.thread.timeoutInMilliseconds", value="800")))
  override def registerUser(emailAddress: String, password: String): Either[RegistrationError, String] = {
    try {
      val response = restTemplate.postForEntity(userRegistrationUrl,
        RegistrationBackendRequest(emailAddress, password),
        classOf[RegistrationBackendResponse])
      response.getStatusCode match {
        case HttpStatus.OK =>
          Right(response.getBody.id)
      }
    } catch {
      case e: HttpClientErrorException if e.getStatusCode == HttpStatus.CONFLICT =>
        Left(DuplicateRegistrationError)
    }
  }
}


The value of user_registration_url is supplied using Externalized configuration .

Где тут "оповещения через асинхронные события"?
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700076
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordPetro123А в реальности зачем мне в БЛ запрос модуля ОтделКадров что такой юзер ещё работает асинхронно?

у тебя не будет такого запроса в микросервисной архитектуре, ни синхронного, ни асинхронного, я еще раз повторяю что все общение микросервисов - это оповещения через асинхронные события, а не команды или запросы к друг другу. Если информация о том, работает юзер или нет нужна в другом микросервисе - то она там и будет находится. Почитай базовую теорию
Дорогой друг. Ваше определение микросервисов весма странное и ограниченное. Предоставте плиз форуму ту самую базовую теорию которую вы читали.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700082
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДорогой друг. Ваше определение микросервисов весма странное и ограниченное. Предоставте плиз форуму ту самую базовую теорию которую вы читали.

уж куда базовей https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700083
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

и где же Вы увидели, что "все общение микросервисов - это оповещения через асинхронные события"?

На Вашей же картинке - это только один из трёх вариантов.
Ну и чёрным по белому написано: "Если возможно, то не завязывайтесь на синхронную коммуникацию".

А если не возможно? Если с одним из десяти надо общаться синхронно?
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700084
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем очередное утверждение из серии "Прочитал, понял на свой лад, вместо того, чтобы разобраться".
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700088
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мда.. Сэм Ньюман дает несколько другое более общее определение.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700094
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Я за то чтобы читать независимых аналитиков.
MS документы и взгляд несколько не то).
Я тоже читал и поддерживаю, что как модель Запрос-ответ, так и модель Наблюдатель могут использоваться.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700101
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы тоже очень осторожно относился к публикациям microsoft в части обобщенных знаний которые ms не создает единолично. У них - один взгляд. У google другой. У oracle вообще третий.

Шаблон CQRS это вообще специфика. Его надо отдельно рассматривать и тюнить с учетом его особенностей.

Кидаться в крайности (ipc) еще рано. Надо доказать что ни storage ни network не являются слабым звеном. До этого - долгий путь.
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700105
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Итого приземлю задачу автора топика:
love_bachЧтобы не дергать их API по http. Как обычно делают? Смотрю на общение чз очереди сообщений (RabbitMQ и т.п.). или это не то?
Если вы не писали Hello world с очередями - напишите и сделайте отдельную тему по очередям.
RabbitMQ , ZeroMQ , Kafka или даже Redis Pub / Sub

Не нужно пристегивать сюда микросервисы.
Это будет телега впереди лошади. Там много чего надо.
IMHO
Удачи!
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700195
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ бы тоже очень осторожно относился к публикациям microsoft в части обобщенных знаний которые ms не создает единолично. У них - один взгляд. У google другой. У oracle вообще третий.

смысл этого "взгляда" в том, что обратившись к микросервису клиент гарантированно получит ответ в не зависимости от доступности других сервисов. Если-же сервисы связаны с друг другом мириадами связей, то и смысла делить на микросервисы особо нет, монолитная структура будет эффективней. Если у вас есть ссылки на "взгляды" гугла и оракла с обоснованиями другой точки зрения - то приведите, интересно почитать
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700214
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Chris RichardsonSynchronous RESTful communication between Microservices is an anti-pattern ... you seem to being saying that the Netflix architecture (hystrix, eureka, ribbon, ..) is broken ... hmm what would Ben Christensen say?
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700215
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мнение Бена думаю сами найдёте...
...
Рейтинг: 0 / 0
Внутреннее общение между микросервисами
    #39700217
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

ну и расскажите уже ТСУ, как ему даже запросы делать не через Synchronous Call, он же про Get и спрашивает: 21668941 .

Предлагаю на примере Вашей же картинки: вот получил Ordering service сообщение о том, что заказ надо оформить, как он данные обо всём что ему нужно подтягивает, используя "оповещения через асинхронные события"?
...
Рейтинг: 0 / 0
25 сообщений из 106, страница 2 из 5
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Внутреннее общение между микросервисами
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]