
Sergey
06.06.2017
17:46:22
Что "в связях"?
данные одного микросервиса не должны влиять на данные другого косвенным образом (за счет одной базы)

F01134H
06.06.2017
17:46:23

da horsie
06.06.2017
17:46:49

Sergey
06.06.2017
17:46:54

Google

da horsie
06.06.2017
17:47:15
прочекал, получил true, сработал if, получил false - сработал else
это ли не зависимость?

F01134H
06.06.2017
17:47:45
а что плохого может случиться от одной бд?
централизованной?

da horsie
06.06.2017
17:47:58
bottleneck

Paul
06.06.2017
17:48:01

da horsie
06.06.2017
17:48:04
single point of failure

Sergey
06.06.2017
17:48:22

da horsie
06.06.2017
17:48:44
и это тоже

Sergey
06.06.2017
17:48:47
ну и тогда вопрос насколько это влияет при таких вещах как деплоймент

Paul
06.06.2017
17:48:55

Sergey
06.06.2017
17:49:06
ну то есть, идея то микросервисов в том что бы ты деплоил не все приложение а по чуть чуть и с минимальным риском для остальных частей приложения

Paul
06.06.2017
17:49:21
Это твои выдумки

Google

Sergey
06.06.2017
17:49:30

Paul
06.06.2017
17:50:42
Микросервисы это решение не технических проблем, а менеджерских: дешевле иметь n групп пишущих на разных ЯП и вообще технологиях, чем одну группу с одним стеком.

Sergey
06.06.2017
17:51:00

Paul
06.06.2017
17:51:18
Я не за shared db, если что. Просто ты аргументирует ну совсем странно

Sergey
06.06.2017
17:51:18

Paul
06.06.2017
17:51:37
Пофигу что в контейнер херачить

Sergey
06.06.2017
17:51:58

Paul
06.06.2017
17:52:06
От того, что там несколько процессов, система не становится микросервисной
ну да, верно

Sergey
06.06.2017
17:53:28
ну то есть идея в том что бы эти "несколько команд" с разными языками и все что ты перечислил не сильно влияли друг на друга. Что бы если у одной команды что-то пошло не так, то это заафектило бы небольшую часть приложения а не все приложение
что в свою очередь позволяет чаще релизиться
а чаще релизиться = меньше изменений за раз
а это тоже уменьшает риски
вот только я на своей практике работал только с 2 проектами где микросервисы были оправданы
и делать их на старте можно только если ты на 100% уверен что оно тебе надо (а это 0.001% проектов)
потому мне больше нравится делать монолиты с изоляцией... там проще

da horsie
06.06.2017
17:58:28

Google

da horsie
06.06.2017
17:59:19
и ты можешь каждому физически в бубен настучать если что

Sergey
06.06.2017
17:59:27
но тут скорее искуственно команду раздули
с ребятами составляем начальству письма что мол "мы все делаем не так, давайте по другому"

Like
06.06.2017
18:00:32
Если у меня спа приложение, то api gateway будет на джсе, так ?

F01134H
06.06.2017
18:00:48
what

Paul
06.06.2017
18:00:49

Like
06.06.2017
18:00:52
или фронт не должен знать ничего

Sergey
06.06.2017
18:01:00

F01134H
06.06.2017
18:01:01
конечно не должен, кек)

Paul
06.06.2017
18:01:04
Фронт это api gateway + клиент

F01134H
06.06.2017
18:01:06
его переписать можно

Paul
06.06.2017
18:01:07
а не только клиент

Like
06.06.2017
18:01:08
лан
харе

Paul
06.06.2017
18:01:18
Клиент должен сам готовить себе данные

Sergey
06.06.2017
18:01:38

Paul
06.06.2017
18:01:39
С фильтрацией секретных данных и прочее

Sergey
06.06.2017
18:01:49
ну может я не так тебя понял

Google

Paul
06.06.2017
18:01:51
Потому api gateway должны пилить клиентские разрабы
А для них очевиден выбор js (ts/etc)
Потому, да, api gateway будет на жс в 99% случаях

Sergey
06.06.2017
18:02:36
хз, я своих фронтендеров на бэк не пускаю

Paul
06.06.2017
18:02:45
Это не бэк

F01134H
06.06.2017
18:02:48
какой еще апи гейтвей на жсе
вы о чем

Like
06.06.2017
18:02:56
дык чо мне делать то, решите уже :D

Admin
ERROR: S client not available

F01134H
06.06.2017
18:02:59
с каких пор гейтвей вообще на клиенте

Sergey
06.06.2017
18:03:07

Paul
06.06.2017
18:03:11

Sergey
06.06.2017
18:03:23

Paul
06.06.2017
18:03:26
Был конкретный вопрос про ЯП api gateway

Like
06.06.2017
18:03:39

F01134H
06.06.2017
18:03:43

Paul
06.06.2017
18:03:53
Так как писать должны его клиентские разрабы, то там будет клиентский яп, всё просто

Sergey
06.06.2017
18:03:57

Paul
06.06.2017
18:04:01

Google

F01134H
06.06.2017
18:04:22

Paul
06.06.2017
18:04:37
Ну смотря какую терминологию брать

F01134H
06.06.2017
18:04:37
к серверу т.е.

Paul
06.06.2017
18:04:50
Как минимум в яндексе и мейле фронт это именно api gateway и клиент
А не только клиент

Sergey
06.06.2017
18:21:11
гейтвей же у кого-то запрашивает данные, значит он клиент
а сервер тот кто обрабатывает

da horsie
06.06.2017
19:42:18
http://seregazhuk.github.io/2017/05/04/di-smells/

Sergey
06.06.2017
21:47:35
ну про циклические зависимости есть у боба принцип
про "слишком много зависимостей" - это намек на нарушение open/close и/или SRP
ну короч... не сказал бы что тут именно di smell, просто хреновая работа с зависимостями

da horsie
06.06.2017
21:49:07
ну терминология может быть не совсем точная, но в целом мысли верные

Sergey
06.06.2017
21:51:49
https://www.youtube.com/watch?v=GAFZcYlO5S0
на вот лучше

da horsie
06.06.2017
21:52:16
спасибо, послушаю вечером

Sergey
06.06.2017
23:04:46
https://8thlight.com/blog/uncle-bob/2013/03/08/AnOpenAndClosedCase.html

da horsie
06.06.2017
23:10:49
...был молод и впечатлителен в свои 43 :)
мне есть к чему стремиться )

Aleh
08.06.2017
11:04:25
интерфейсы и ооп: еще один взгляд https://github.com/michaelficarra/ecmascript-interfaces-proposal