
Mykyta
16.04.2018
07:28:03

Yura
16.04.2018
07:28:32
btw, @mcsseifer - Тимур Нурутдинов - тоже принимал активное участие.

Google

Igor
16.04.2018
07:37:41
Спасибо за ответ!

Marlik
16.04.2018
08:37:52
А 'мой круг' мэйлру принадлежит? А то у них сайт лёг.

bebebe
16.04.2018
08:38:31

Pawel
16.04.2018
08:38:35

Grigoriy
16.04.2018
08:39:41

Daniel
16.04.2018
08:43:34

Alexander
16.04.2018
08:46:16

Daniel
16.04.2018
08:46:47
там, где можно, он асинхронный

Alexander
16.04.2018
08:46:51
Или какая-то эмуляция асинхронности через нативные треды?

Daniel
16.04.2018
08:47:07
коллега, о чем вы спрашиваете?
со стороны программера там всегда синхронно, кроме селекта с дефолтом
а вот со стороны рантайма возможны варианты
в том же линуксе файловое IO не до конца асинхронное. go тут ничего сделать не может

Google

Daniel
16.04.2018
08:49:51
еще там, конечно, есть динамическое увеличение тред-пула в случае, если все имеющиеся треды оказались заблокированы на синхронных операциях в ядре

Alexander
16.04.2018
08:50:47

Daniel
16.04.2018
08:51:08
кому оно эмулирует асинхронность и зачем?

Alexander
16.04.2018
08:58:31
Вот представьте, что вам надо написать раздатчик файлов. Допустим у вас сотни коннектов, которым надо выкачать по гигу с вашего диска. Разве вы будете заниматься чтением с диска в тех же тредах, где вы обрабатываете коннекты?

Daniel
16.04.2018
09:00:23
почему нет?

Max
16.04.2018
09:00:38
Господа, подскажите пожалуйста, есть ли как-то либы для авто-генерации какой-нибудь +- веб морды для апи, чтобы не лазить постоянно во всякие курлы, постмены?

Daniel
16.04.2018
09:01:00
а?!

Yura
16.04.2018
09:01:25
Так вот я и спрашиваю, мало ли, может го через нативные треды эмулирует асинхронность.
Весь сетевой ввод-вывод асинхронный. Не блокирующие сисколы тредов не порождают, а выполняются в потоке шедулера горутин. Блокирующий сискол, если отработал быстро, тоже не порождает тред. Если же заблокировался на долго, то рантайм создает новый тред и уносит на него шедулер: заблокированная горутина остаётся на этом треде, другие горутины выполняются на новом.

ichi4Ø4
16.04.2018
09:01:34

bebebe
16.04.2018
09:01:50

Max
16.04.2018
09:02:03
Swagger?
она же вроде только документацию собирает? а я бы хотел именно функционал, или я ошибаюсь?

bebebe
16.04.2018
09:02:21
если сделать все прямо, то твой бинарник, который провайдит rest api - по хттп сможет отдавать тот rest который поддерживает

Daniel
16.04.2018
09:02:35
это не совсем так

ichi4Ø4
16.04.2018
09:02:36

Alexander
16.04.2018
09:02:39

Daniel
16.04.2018
09:02:55

Max
16.04.2018
09:02:58

Daniel
16.04.2018
09:03:26
сваггеру надо переопределить обработчики, и тогда будет примерно то, что запросил топикстартер

bebebe
16.04.2018
09:03:43
при помощи swagger.io можно захостить прототип своего rest'a и на нем дергать примеры, или сделать fake-api, что бы тестировать клиента

ichi4Ø4
16.04.2018
09:04:31
Про го не могу сказать, но на дотнет проекте сваггер дёргал вполне реальные методы

Google

Daniel
16.04.2018
09:05:03
коллега

Max
16.04.2018
09:05:25
спасибо всем, пойду в доке пороюсь, может чего получится

Daniel
16.04.2018
09:05:37
если вы написали реальные методы - сваггер будет их дергать, только надо объяснить ему, какие куда
а если не написали - дефолтный обработчик возвращает "not implemented"

Max
16.04.2018
09:06:33

Daniel
16.04.2018
09:07:00
сегодня день вопросов, которые я не понимаю :(
у вас есть описание вашего api в формате swagger
вы генерите из него серверный код (с помощью go-swagger)
получается нечто, что можно собрать и запустить, и даже все endpoints будут обрабатываться
но
что делать-то по запросу на каждый endpoint вам еще предстоит написать, правда?

ichi4Ø4
16.04.2018
09:09:34
У вопрошающего апи написан уже, как я понял

bebebe
16.04.2018
09:09:39

Max
16.04.2018
09:10:09

Daniel
16.04.2018
09:10:40
вот для этой задачи сваггер подходит идеально

Max
16.04.2018
09:11:18

Marlik
16.04.2018
10:04:14
Всё, блокировка началась.

Zaur
16.04.2018
10:04:26
Чё там
Куда сваливает группа
Куда идти

Google

Zaur
16.04.2018
10:04:48
Где наш лидер

Artem
16.04.2018
10:06:05
Зачем сваливать?

John
16.04.2018
10:06:18
или tox ...

Zver
16.04.2018
10:06:51

Daniel
16.04.2018
10:08:31

Marlik
16.04.2018
10:09:52
В Телеграм Девелоперс паника)))) Это вот эти @botoid

Andrey
16.04.2018
10:10:29
у меня ещё работает

Daniel
16.04.2018
10:10:30
у них понятно паника, у них же клиенты не айтишники

Мерлин
16.04.2018
10:10:34
Куда сваливает группа
Телеграм уже час как заблокирован, а вы паникуете
Мы уже на глубине дарквеба, господа, поздравляю с успешным погружением, кингстоны открыты и моторы наши быстры.

Александр
16.04.2018
10:11:01
да пиздец

Zaur
16.04.2018
10:11:16
Ураа *подбросил шляпу*

Vyacheslav
16.04.2018
10:11:16
хех, у меня друг за сегодня уже некисло поднял денег на настройке dante :D

Daniel
16.04.2018
10:11:26

Andrey
16.04.2018
10:11:51
что за призывчики :)

Vyacheslav
16.04.2018
10:11:52

Daniel
16.04.2018
10:12:05
все, коллеги, сворачиваем

Александр
16.04.2018
10:12:18
у меня вопрос по сваггеру

Daniel
16.04.2018
10:12:29
не верю

Александр
16.04.2018
10:12:38
можно ли как то переопределить то что написано в swagger.yaml "на лету"?

Google

Daniel
16.04.2018
10:12:54
а?!
зачем?!

Александр
16.04.2018
10:13:02
дело в том что там в файле прописано под наш альфасервер basePath

Daniel
16.04.2018
10:13:10
ну

Александр
16.04.2018
10:13:10
а в приложении надо генерировать по другому
я сижу уже мозги сломал

Daniel
16.04.2018
10:13:19
ну и генерируй по-другому

Александр
16.04.2018
10:13:36
так блин
генерация через swagger generate server

Daniel
16.04.2018
10:13:47
и?!

Александр
16.04.2018
10:13:58
оно шьет из конфига basePath везде

Daniel
16.04.2018
10:14:11
если у вас разные бинарники для теста и прода - пусть это будет отражено в сорцах

Александр
16.04.2018
10:14:23
нене
смотри
на альфе у нас развернут swagger view или как он там называется
что бы это корректно работал, ему в swagger.yaml прописали basePath с учетом nginx
host.com/basepath/controller
при это приложенька живет за nginx и должно слушать просто host.com/controller

Alexander
16.04.2018
10:17:29
а там разные basePath для test/stage/prod нельзя юзать ?

Daniel
16.04.2018
10:17:37
так пропишите basePath /controller? и научите nginx изымать /basepath из URI
и вся история

Александр
16.04.2018
10:18:11
костыль блин