metaclass: (Default)
[personal profile] metaclass
Вчера был на тусовке junolab, где их главные гуру рассказывали, как у них бекенд устроен.
В частности, на входе у них стоят гейтвеи с обычным http протоколом и минимальным набором фич - валидация, проверка авторизации по токенам и прочее такое, которые перекидывают запрос в MQ (nats.io).

При этом, насколько я понял, асинхронность там реализована поверх обычного http, без всяких http2, веб-сокетов и прочих не везде работающих протоколов - т.е. клиент api сначала делает запрос к гейтвею, ему сразу говорят - 200 ок, а потом он должен, по идее, дальше опрашивать гейтвей, пока для него из MQ придет ответ от микросервисов. Или у них там ответы от сервера бесконечно идут, я сходу не понял (т.е. ответ без content-length и соединение просто ждет пока придет что-нибудь, не помню, как эта техника называется).

В принципе, если keep-alive и соединение не обрывается - то реализация дуплексного протокола поверх синхронного http вроде приемлемая. Единственное, что в случае бесконечного ответа - если сервер и клиент долго ничего друг другу не говорят - промежуточные NAT и прочая сетевая муть могут соединение забыть, причем пока TCP keep-alive не проснется (а это два часа по умолчанию, вроде) - это обнаружено той стороной, которая молчит и ждет, не будет. Но теоретически это какие-то heart-beat слать можно со стороны сервера и запросы со стороны клиента.

Date: 2016-08-03 05:58 pm (UTC)
From: [identity profile] nivanych.livejournal.com
Кто "оба"?
Влад когда-то работал в гугле, я никогда там не работал.
Этот вопрос как-то связан с моим шутливым ответом? ;-)

Date: 2016-08-03 06:01 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
почему Влад отверг гугл

Date: 2016-08-03 06:09 pm (UTC)
From: [identity profile] http://users.livejournal.com/_slw/
влад? что-то я всегда думал что он вова.
а ответ...
ну так, конечно быстрее будет ответ получен.
но вовсе не в этом основной смысл у данной методики

Date: 2016-08-03 06:14 pm (UTC)
From: [identity profile] nivanych.livejournal.com
NAME: Vlad Patryshev
Ну как же. Всего можно добится и вовсе тупым поллингом, но при этом ещё и больше сервер напрягать.
И вообще, сейчас это всё меньше имеет смысл.
Уже совсем мало используется браузеров, не умеющих веп-сокеты.

Date: 2016-08-03 06:20 pm (UTC)
From: [identity profile] berezovsky.livejournal.com
прочитал "тупым троллингом"

надо завязывать с чтением интернетов

Date: 2016-08-03 06:58 pm (UTC)
From: [identity profile] nivanych.livejournal.com
Напрягал сервер тупым троллингом.
;-) Прикольно!

Date: 2016-08-04 07:51 pm (UTC)
From: [identity profile] anonim-legion.livejournal.com
Я как-то раз отправил PM'у письмо с вопросом, от которого он сначала завис на полдня, разбираясь в вопросе, а потом сильно обиделся, потому что вопроса-то в сущности и не было.

Date: 2016-08-05 03:52 am (UTC)
From: [identity profile] berezovsky.livejournal.com
затралел пма азазаза

Date: 2016-08-03 06:21 pm (UTC)
From: [identity profile] http://users.livejournal.com/_slw/
новодел какой-то

2:5030/119 Vova Patryshev from SPb Russia 1993.12.10 - 1998.05.29

> Ну как же. Всего можно добится и вовсе тупым поллингом, но при этом ещё и больше сервер напрягать.

воот. нагрузка -- это основное

> Уже совсем мало используется браузеров, не умеющих веп-сокеты.

они не работают через прокси.
и вроде, через некоторых мобильных операторов

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 6th, 2025 07:28 am
Powered by Dreamwidth Studios