powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
25 сообщений из 155, страница 1 из 7
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39323909
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.
У меня непонимание. Какой смысл от микросервисной архитектуры, насколько это должно быть МИКРО ?
Разве подход, когда части приложения общаются между собой по сети (через REST, если говорить о микросервисах) не усложняет систему ? Не тормозит ее ? Ведь тут добавляется сложность в виде сетевого слоя.
Нужно ли, к примеру, логгирование, выделять в отдельный микросервис ? И что, если процессор выполняет 1000 операций за 1 секунду, он должен организовать 1000 сетевых запроса в логгер ? Но это опять таки к вопросу о том, насколько МИКРО они должны быть тогда.

Как я вообще мыслю. Имеем систему. она состоит их различных блоков, выполненых в виде отдельных DLL. Эти DLL крайне минимально взаимодуйствуют между собой. Самый максимум связи, это UserId у Document. Т.е. не ссылка на класс User, чтобы не нужно было связывать сборки. Как такую систему разбить на микросервисы, что куда уйдет ? Или все это будет одним микросервисом ? Ну тогда какой же он микро... не понимаю.

Помогите, приведите пожалуйста примеры, на словах, какой-то системы состоящей из микросервисов. Объясните какие там микросервисы должны быть. И в чем, собственно, выгода. Обязательно ли, чтобы взаимодействие между ними было сетевым, или разные DLL тоже можно назвать микросервиса - если мы в каждой DLL создадим классы userSerivece, documentService ?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39323921
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нормальная практика это чтобы весь микросервис помещался в голову одного человека. К примеру некоторые из микро сервисов в моей системе:
отправка писем
отправка смс
геосервис(метоположение по координатам или по айпи итд)
метамодель
ботсервисы(телеграм, фейсбук)
кролер
генератор уникальных ключей(отдает строки по заданному алфавиту заданной длинны гарантированно уникальные в контексте указанного дискриминатора)
преобразователь курсов валют (конвертирует валюты)
рассыльщик уведомлений(когда какому клиенту какое письмо послать)

и прочие
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39323964
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,

ну и супер. Я такое обычно делаю в виде отдельного проекта, в виде DLL. Потом можно подключить куда-то, и вызывать примерно так
Код: c#
1.
2.
var service = new MailSenderService();
service.Send(...)



У меня возникает не понимание сути микросервисов. Обязательно ли они должны быть разделены сетевым слоем? Если это просто DLLка которая лежит тут же в проекте, это не микросервис что-ли ? Чтобы она стала "микросервисом" нужно поднять отдельный сервер, в котором будет реализован прием сетевых сообщений на предмет отправки почты + класс-шлюз (чтобы я в клиенте мог писать простой код вида MailSender.Send) + слой обработки ошибок, в том числе сетевых?

Потрясающе. И где же тут тогда Микро ? Если это Микро, то как называется, когда просто в виде DLL ?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39323978
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,

И еще тогда вопрос. Вот эта куча микросервисов, это столько WinService должно висеть ?

А как быть с версионностью, если нужно допилить сервис, но другие клиенты не должны из-за этого менять у себя что-то. Что ж нам, придется держать на машине WinService'ы вида:
MailSender1.1_ForProject1.exe
MailSender1.1_ForProject2.exe
MailSender2.5_ForProject2.exe
?

У себя я делаю просто. У меня в Solution находятся буквально своя индивидуальные копия MailSender DLL.
Когда стартует новый проект, и ему нужен такой-же функционал, то я просто копирую проект DLL в этот солюшен. Там он дальше живет, эволюционирует - может потом сильно отойти от родительского варианта. Да, в итоге мы получаем некоторое дублирование, но зато нет особых проблем с версионностью - проект живет только со своей версией вспомогательной библиотеки. Меняется проект, меняется и библиотека.

Главное, что у меня нету сетевого взаимодействия. Я не понимаю в чем его смысл, ведь это ведет к усложнению разработки (нужено разработать слой доступа) + сложности конфликтов версионности.

Может я не дорос до таких сложностей. Но вот хочется разобратся, как правильно создавать проекты используя микросервисы. Пока не вижу плюсов, вижу только минусы.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324014
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Преимуществ полно, хотя и недостатки есть.
Главные преимущества для меня - простота развертывания, и скорость разработки.
Мне не нужно тестировать и перевыклдывать кучу проектов при изменении одного. Также мне просто делегировать задачи разработчикам и не переживать что они недостаточно компетентны. Как только ты будешь писать более менее объемную систему, причем задача будет делать это быстро, а не как в типичном корп. секторе, ты сразу все поймешь.
Вот есть у меня проект, допустим по фрилансу. С одной стороны у меня куча заказчиков, с другой куча исполнителей. С одних я беру рубли, другим я плачу баксы. Мне нужен сервис который конвертирует из одной валюты в другую. Если он живет дллкой, то тебе придется перевыкладывать оба продукта при изменении сервиса(например ты брал курсы ЕЦБ, а решил брать ЦБ). Паблиш большого проекта на прод - это боль и страх и много заморочек, даже с ci. Оба эти продукта тоже находятся в разработке, потому тебе скорее всего не просто будет взять и выложить их, да еще одновременно. Если же они берут данные по контракту с удаленной тачки через шину сообщений, то все становится гораздо проще. Тебе не нужно перевыкладывть оба продукта, тебе не страшен даунтайм микросервсиа, ты скорее всего не наделаешь там ошибок так как там тривиальный код, ты можешь поручить создание этого сервиса новичку и если сервис плохо сделан - просто выкинуть его, он не затронет никакие части системы. Или, к примеру, сервис должен иметь очень широкий интернет канал, или юзает много процессорного времени, тебя тоже это не волнует так как ты можешь заскейлить каждый сервис отдельно.
Главное не делай так чтоб микро сервисы лазили не в свою базу, и будет норм.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324051
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis.,
Хм. Ну в данном примере выходит контракт не поменялся. А ведь при разработке как раз и получается, что все эти сервисы живут и развиваются, т.е. так и так менять и клиента и сервер.

Насчет того, что когда реализовано в виде DLL и нужно менять И сервер И DLL. Можно решить эту проблему.
У вас там микросервис и шина для их связи. А для DLL можно сделать аналог через плагинную систему и контракт. Чтобы сервер сам подгружал DLL реализующую нужный ему контракт из папки. В этом случае можно будет заменить только DLL и сервер не заметит. Дальше уже разные команды разрабатывают разные части приложения но общение идет через контракт.

В общем пока не понял выгоды микросервисов :(
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324124
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotek,
если непонятно, зачем нужно общение по сети, то не нужно заморачиваться.
Глупо делать из принципа "шоб на микросервисах".
И DLL ну никак не альтернатива микросервисам, это вообще совсем из другой области, а то получим С++ vs MySQL.
Тут задачи уровня "шина данных" vs "микросервисы".
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324139
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotekУ меня непонимание.
у тебя реальная задача - есть?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324319
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

Да задач то полно, всегда.
У меня непонимание того, что такое молоток, когда от него выгода, и когда им пользоваться. А вы меня спрашиваете, есть ли у меня задачи для молотка.
Я сам задаю себе этот вопрос, есть ли у меня задачи для микросервиса ) Но не зная для чего они нужны я не могу решить, есть ли у меня для них задачи.

Пока я понял, что их плюс в масштабировании. Т.е. если в шине будут копится запросы, а сервисы на различных машинах будут брать эти задачи и обрабатывать их. Соответветственно, чем больше будет запущено программ, тем быстрее они будут разгребать очередь.

Только в этом их плюс, или еще что то есть ? Раньше сказали про простоту деплоя, но про это я все же не понял. Если контракт изменится, то так и так все передеплоивать - не говоря о том, что наоборот все усложнится, т.к. из шины данных задачу сможет взять как обновленный сервис, так и старый. Т.е. придется еще заморачиватся с версионностью данных.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324336
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotekDenis.,

ну и супер. Я такое обычно делаю в виде отдельного проекта, в виде DLL. Потом можно подключить куда-то, и вызывать примерно так
Код: c#
1.
2.
var service = new MailSenderService();
service.Send(...)

Как подключить дотнетную DLL к серверу приложений, работающему под, например, z/OS + WebSphere ?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324337
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotek,

Микросервисы -- способ наращивать функциональность системы так, чтобы реализации новых функций были независимы друг от друга. Это подходит далеко не для всех типов проектов, просто по сути.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324342
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttProBiotek,

Микросервисы -- способ наращивать функциональность системы так, чтобы реализации новых функций были независимы друг от друга. Это подходит далеко не для всех типов проектов, просто по сути.+ исторически могло сложиться так, что существовало несколько независимых ИС, а теперь пришло время их интегрировать между собой.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324355
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К+ исторически могло сложиться так, что существовало несколько независимых ИС, а теперь пришло время их интегрировать между собой.

Ага, два или три отдельных приложений, вдруг оказавшись как-то связаны между собой внезапно превращаются в.. микросервисы
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324508
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смешались в кучу кони, люди ...
В смысле, микросервисы, шины, приложения, DLL.
Откуда тут может быть понимание?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324963
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей К+ исторически могло сложиться так, что существовало несколько независимых ИС, а теперь пришло время их интегрировать между собой.

Ага, два или три отдельных приложений, вдруг оказавшись как-то связаны между собой внезапно превращаются в.. микросервисы Оно конечно зависит от способа интеграции, но результат может быть множеством микросервисов в том числе.

зы: О таком в популярных блогах не пишут и на молодёжных конференциях не рассказывают. Так что пользуйся случаем, пока я тут. :-)
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324964
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AddxСмешались в кучу кони, люди ...
В смысле, микросервисы, шины, приложения, DLL.
Откуда тут может быть понимание?Информационная система может быть разделена на функциональные модули различными способами. В том числе с помощью "микросервисы, шины, приложения, DLL".
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324971
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КОно конечно зависит от способа интеграции, но результат может быть множеством микросервисов в том числе.

Я просто к тому, что всё зависит от точки зрения. Микросервисы успешно пилили ещё до появления термина «микросервисы», но проблемы начались именно с появлением этого термина, КМК.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324979
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КОно конечно зависит от способа интеграции, но результат может быть множеством микросервисов в том числе.

Я просто к тому, что всё зависит от точки зрения.Считаешь, что всё субъективно? Объективности не существует? :-)
hVosttМикросервисы успешно пилили ещё до появления термина «микросервисы»,Как и множество "паттернов", описанных позднее в научно-популярной литературе. :-)
hVostt но проблемы начались именно с появлением этого термина, КМК.По сравнению с "проблемами" из-за "паттернов", с микросервисами проблем вообще нет. :-)
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39324986
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЯ просто к тому, что всё зависит от точки зрения.Ну тут скорее не точка зрения, а история развития. Или мы закладываем "микросервисность" изначально, или получаем её в результате эволюции.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325034
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttпропущено...


Ага, два или три отдельных приложений, вдруг оказавшись как-то связаны между собой внезапно превращаются в.. микросервисы Оно конечно зависит от способа интеграции, но результат может быть множеством микросервисов в том числе.

зы: О таком в популярных блогах не пишут и на молодёжных конференциях не рассказывают. Так что пользуйся случаем, пока я тут. :-)
В РЖД задумались об интеграции своего зоопарка в единую систему? И внезапно решили, что у них множество микросервисов? :)
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325039
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttЯ просто к тому, что всё зависит от точки зрения.Ну тут скорее не точка зрения, а история развития. Или мы закладываем "микросервисность" изначально, или получаем её в результате эволюции.
Все дороги ведут в Рим?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325040
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КСчитаешь, что всё субъективно? Объективности не существует? :-)

Я считаю, что объективно, разные приложения -- это разные приложения, а микросервисами их начинают называть, только в контексте некоего единства системы по каким-то признакам.

Ну и надо ещё посмотреть на границы, с какого момента приложение перестаёт влазить в термин «микро»


Алексей ККак и множество "паттернов", описанных позднее в научно-популярной литературе. :-)

Ну да, я об этом и говорю. С появлением паттернов ушло много головной боли с названиями переменных и классов Тут такая же история.

Алексей КНу тут скорее не точка зрения, а история развития. Или мы закладываем "микросервисность" изначально, или получаем её в результате эволюции.

Ну вот тут и получается, что изначально пилить «микросервисную архитектуру» как-то немного глупо. Она должна вырасти, это по сути процесс развития системы.
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325043
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAсвоего зоопарка в единую систему

Ты хотел сказать, эко-систему?
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325091
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИ внезапно решили, что у них множество микросервисов? :)Ну это не они, это я так решил. :-)
...
Рейтинг: 0 / 0
В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
    #39325093
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНу и надо ещё посмотреть на границы, с какого момента приложение перестаёт влазить в термин «микро» Ну давай введём понятие макросервисная архитектура . Это решит проблему. :-)
...
Рейтинг: 0 / 0
25 сообщений из 155, страница 1 из 7
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В чем смысл микросервисов ? Ведь это же усложняет и тормозит обмен.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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