@nodejs_ru

Страница 674 из 2748
Dmitry
25.03.2017
21:44:29
А ты уже сверяешь твиттерид с тем что у тебя в бд и понимаешь кто залогинелся

Vladimir
25.03.2017
21:44:38
В первую очередь потому, что это естественный этап в развитии кода

Aleh
25.03.2017
21:44:41
как вы пришли к микросервисам вообще? У меня реальная проблема здесь)
суббота, какая разница что обсуждать, а с умными людьми-то

Vladimir
25.03.2017
21:44:50
А переход к тому что ты описываешь не имеет никакого профита

Google
Aleh
25.03.2017
21:45:14
ты про jwt или границы транзакций?)

Dmitry
25.03.2017
21:45:27
мне все равно нужно в своей таблице юзеров создать для него запись
Можно запросить у твиттера почту юзера и сохранять по почте

=_=
25.03.2017
21:45:28
А ты уже сверяешь твиттерид с тем что у тебя в бд и понимаешь кто залогинелся
сорри за тупые вопросы, но я не совсем представляю себе весь процесс

Aleh
25.03.2017
21:45:45
хз, я знаю приложения, где это успешно прижилось, клиент вообще при этом не трогали, ему все равно какие токены гонять

Dmitry
25.03.2017
21:45:47
Загугли OAuth 2

Aleh
25.03.2017
21:45:54
и я бы не назвал это усложнением

Vladimir
25.03.2017
21:46:03
В например у меня юзеры существуют в только в рамках api

В микросервисах их вообще нет

Aleh
25.03.2017
21:46:19
постепенно чуваки от монолита хорошенько отпиливали куски, которые надо было резко скейлить

Vladimir
25.03.2017
21:46:22
Никакой авторизации, ничего

Это просто кусок кода, который что делает, не важно для кого и почему

Aleh
25.03.2017
21:47:36
ну у тебя получается есть центральная точка отказа

Vladimir
25.03.2017
21:47:39
Более того, достаточно важно что два разных микросервиса не должны работать с одними и теми же данными

Google
Aleh
25.03.2017
21:47:40
сервис авторизации

Aleh
25.03.2017
21:47:56
ну тогда я опять не понял(

Vladimir
25.03.2017
21:48:12
API gateway полностью stateless

Их столько, сколько хочется

Aleh
25.03.2017
21:48:24
так а как он авторизирует?

jwt?))))

=_=
25.03.2017
21:48:34
Загугли OAuth 2
гугл выдает подробности по тому как это внутри работает. Мне это в общем-то не надо знать, потому что за меня эту низкоровневую задачу делает либа (grant)

Vladimir
25.03.2017
21:48:53
так а как он авторизирует?
Берет токен из запроса и идет в БД

trilog
25.03.2017
21:48:58
ахахах, низкоуровневый OAuth 2

))))

=_=
25.03.2017
21:49:03
меня интересует что мне делать когда я уже авторизовался

Aleh
25.03.2017
21:49:09
Берет токен из запроса и идет в БД
ну чет не очень стейтлес

=_=
25.03.2017
21:49:22
Vladimir
25.03.2017
21:49:35
Ну БД не стейтлесс, да

Было бы странно если бы БД была стейтлесс

Aleh
25.03.2017
21:50:37
ну я понял твой подход, но тогда если у нас резко растет нагрузка на сервис доставки груза, то нам вместе с ним надо скейлить авторизацию

или еще че

ну т.е. фронт, который чуть сложнее, чем прокся

Google
Vladimir
25.03.2017
21:51:08
Растет только нагрузка на базу

Aleh
25.03.2017
21:51:09
это бывает неудобно

Vladimir
25.03.2017
21:51:17
Она растет всегда и в любом случае

Это элементрано решается кэшированием

Aleh
25.03.2017
21:51:35
в случае микросервисов у тебя под каждый сервис своя база

Vladimir
25.03.2017
21:51:50
Так и есть, условно

Aleh
25.03.2017
21:51:59
ну или что-то изолированное

как это организованно - деталь реализации

но ты можешь их скейлить вместе, грубо говоря

а тут надо еще скейлить всегда "центральный сервис"

это часто не проблема, но бывает проблема

тогда и нужен jwt

Vladimir
25.03.2017
21:53:01
jwt это трэш

Неоднократно поднимался вопрос

Оно убивает безопасность

Aleh
25.03.2017
21:53:25
тогда и нужен jwt
или другой стейтлес-токен

Оно убивает безопасность
ну понятно, что у тебя рефреш токены стейтфул будут

а стейтлес на короткий срок

Vladimir
25.03.2017
21:54:16
Это делает авторизацию слишком сложной на клиентской стороне

Aleh
25.03.2017
21:54:28
вопрос в том, чтобы экономить в 95% запросах время на хождение за инфой сессии куда-либо

Google
Vladimir
25.03.2017
21:54:39
Более того, использование кук является критичным для безопасности

Aleh
25.03.2017
21:54:56
Это делает авторизацию слишком сложной на клиентской стороне
так опять же, вопрос экономики, если на клиенте это решать в итоге дешевле, то так и надо делать

такие случаев КРАЙНЕ мало

но они есть

=_=
25.03.2017
21:55:03
просто может кто-то пояснить чем отличается флоу когда у меня табличка с юзерами и я их сам аутентифицирую по своей базе данных, от делегированной аутентификации?

Vladimir
25.03.2017
21:55:16
Строить такую систему дороже

При этом можно наделать катастрофических ошибок

Aleh
25.03.2017
21:55:41
она могла появиться эволюционно и так на каком-то этапе стало делать тупо дешевле

всегда можно наделать ошибок

Admin
ERROR: S client not available

Vladimir
25.03.2017
21:56:14
Единое АПИ является максимально простым и надженым вариантом

Aleh
25.03.2017
21:56:39
я всего-лишь говорю, что это не всегда так

Vladimir
25.03.2017
21:56:47
Я думаю всегда

Aleh
25.03.2017
21:56:55
когда тебе надо скейлить один единственный сервис, то проще скейлить только его

или группу сервисов

а еще бывает, что оно скачет очень сильно

сегодня одна группа, завтра другая, послезавтра обе

ну типа так бывает)

Vladimir
25.03.2017
21:57:46
Это наоборот аргумент в пользу единого gateway

Aleh
25.03.2017
21:57:54
почему?

Google
Vladimir
25.03.2017
21:57:57
Т к на него нагрузка всегда ровнее

Ему все равно, какое распределение между запросами

Aleh
25.03.2017
21:58:21
и это может быть не так, например в случае послезавтра)

Vladimir
25.03.2017
21:59:04
Условно говоря, ты скейлишь gateway пропорционально общей активности пользователей

KlonD90
25.03.2017
21:59:18
Есть aws elb + socket.io?

Vladimir
25.03.2017
21:59:31
Микросервисы пропорционально активности использования конкретных функций

KlonD90
25.03.2017
21:59:37
Как решаете проблемы привязки?

Aleh
25.03.2017
22:00:21
или не скейлить gateway авторизационный, а скейлить только микросервисы

Vladimir
25.03.2017
22:01:15
Так вряд ли может быть

http://microservices.io/patterns/apigateway.html

Using an API gateway has the following benefits: Insulates the clients from how the application is partitioned into microservices Insulates the clients from the problem of determining the locations of service instances Provides the optimal API for each client Reduces the number of requests/roundtrips. For example, the API gateway enables clients to retrieve data from multiple services with a single round-trip. Fewer requests also means less overhead and improves the user experience. An API gateway is essential for mobile applications. Simplifies the client by moving logic for calling multiple services from the client to API gateway

Aleh
25.03.2017
22:03:44
=_=
25.03.2017
22:04:49
спасибо ребят вы такие отзывчивые

(на самом деле нет)

нашел здесь что искал http://stackoverflow.com/questions/10100231/sign-in-with-oauth-what-should-i-store-use-to-identify-the-user

Dmitry
25.03.2017
22:10:42
А ты думал тут помогают решать проблемы? :)

=_=
25.03.2017
22:11:07
my bad

теперь знаю что нет

Котяй Негодяй
26.03.2017
00:26:35
Подскажите годный пакет для создания CLI.

Кирилл
26.03.2017
05:06:04
Пакет яровой

Sheldhur
26.03.2017
07:14:05
есть пакет который форматирует sql запрос и раскрашивает, но для вывода в консоли?

Roman
26.03.2017
07:15:28
Я как-то тоже не представляю микросервисы без гейтвея

Страница 674 из 2748