@nodejs_ru

Страница 16 из 2748
Denis
17.05.2016
12:51:50
Я думаю что просто вопрос слишком обширный/неточный. =) В общем случае скажут - берешь express и делаешь кучу методов .get() .post() и т.д. (прямо из доки по express) . А если получается много кода - разбиваешь по файлам как тебе удобно

Vladimir
17.05.2016
12:59:42
наверное, вопрос скорее в том, как удобней всего быстро сделать restful api, с персистансом в постгресе, чтобы по минимуму возиться с миграциями и багами ОРМ.

это я присоединяюсь к вопросу и задаю свой подвопрос:)

Alisa
17.05.2016
13:00:42
ну значит я пока что всё делаю правильно, спасибо, но думал уже есть какие-то наработанные практики, которым все следуют

Google
Nikita
17.05.2016
13:00:49
я могу рассказать как я делал

Evgeny
17.05.2016
13:01:09
HapiJS + модули к нему, ручной работы почти не надо

Nikita
17.05.2016
13:01:54
вот у меня hapi не пошел, но я сделал почти также внутри express

для каждого проекта пишу свою createRoute функцию

и вот так выглядит код контроллеров

Denis
17.05.2016
13:02:47
koa 2.x никто еще не поднял?)

Константин
17.05.2016
13:08:33
Я на koa2 перешел. Так можно без проблем переходить, недавно добавили koa.convert и старые мидлверы на генераторах работают, только ворнинг выбрасывают.

Konstantin
17.05.2016
14:04:02
пишу отдtльный сервис для обработки сокетов, на хендшеке получаю sid из кукисов и нужно прочитать сессию пользователя, которая создана экспрессом в другом процессе создаю http://pastebin.com/FfM4CghM express-session объект, но чет не найду как обратиться к сессии по SID

вроде нашел нужный пример http://mono.software/2014/08/25/Sharing-sessions-between-SocketIO-and-Express-using-Redis/

Artur
17.05.2016
14:28:34
koa 2.x никто еще не поднял?)
У меня один из микросервисов на нем уже. Все норм работает.

Gregory
17.05.2016
14:50:48
Koa 2.x вообще красава. Правда async/await транслируется в бесконечный while что не очень хорошо на беке

Kanat
17.05.2016
15:01:30
https://ru.m.wikipedia.org/wiki/Абстракция_данных

Google
Gregory
17.05.2016
15:08:15
также

везде так же, вот почему async/await проигрывает в беке

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

для прода сейчас не знаю, хорошо или плохо. Смотря какие нагрузки

Vladimir
17.05.2016
15:12:29
в шестой ноде нативные промисы

почему они будут ковертироваться async/await конвертируется в infinite loop?

Konstantin
17.05.2016
15:14:09
для прода сейчас не знаю, хорошо или плохо. Смотря какие нагрузки
отлично в проде работают… нагрузка 200 тыщ в день, 3-5 тыщ онлайн

Gregory
17.05.2016
15:14:12
потому что их так конвектирует бейбл

Константин
17.05.2016
15:28:38
..разве не в генератор с промисами? там нету while..

если не для 5,6 ноды - функция с while, для node 5,6 - в генератор с промисами транспилится

Denis
17.05.2016
17:37:57
Все места на Node.js Meetup были разобраны сегодня утром (меньше чем за сутки), но только что освободилось одно место - успевайте http://www.meetup.com/Moscow-NodeJS-Meetup/events/231141123/

Gregory
17.05.2016
17:45:50
посмотри то во что привращается async/await

Artur
17.05.2016
17:45:54
..разве не в генератор с промисами? там нету while..
Во, во. У меня TS 1.8 в wrap/yield прекомпилирует.

посмотри то во что привращается async/await
Ну так меня ввело в заблуждение: 1) koa ничего не компилит, это делает транспилер; 2) Транспилер TS не генерирует бесконечных циклов

Gregory
17.05.2016
17:46:37
while(true) с внутреними switch которые решают что когда делать

Я и не говорю

Artur
17.05.2016
17:47:04
Неужто babel такое делает О_О

Gregory
17.05.2016
17:47:12
что koa что то комплит, koa2 просто в основе юзает async/await

Nikita
17.05.2016
17:47:14
это если yield не поддерживается

Google
Nikita
17.05.2016
17:47:24
на бэке yield поддерживается уже давным давно

Gregory
17.05.2016
17:47:38
какая у тебя нода?

не у всех на проде 6, я с 6 еще не пробовал

Nikita
17.05.2016
17:48:09
эм, с 4 поддержка норм

если не с iojs

Gregory
17.05.2016
17:48:16
у меня 4

не потдерживается

Artur
17.05.2016
17:48:34
что koa что то комплит, koa2 просто в основе юзает async/await
Это практически ничем не отличается от генераторов, просто * сменили на async а yield на await.

Gregory
17.05.2016
17:49:16
я тестами транслирую код и смотрю что там внутри, и вот там говно редкое

Не совсем

Artur
17.05.2016
17:49:22
не у всех на проде 6, я с 6 еще не пробовал
Я уже года полтора или два использую yield начиная с появления его поддержки в iojs.

Влад
17.05.2016
17:49:26
не потдерживается
На 4-ой поддерживается, инфа 100%

Gregory
17.05.2016
17:49:37
4.0.2

Artur
17.05.2016
17:49:45
А версии обновляю, естественно, по мере выхода.

Если проект в разработке, разумеется.

Влад
17.05.2016
17:50:07
В 4-ой есть генераторы же, я сам лично использовал

А вот async/await есть только в бабеле пока

Gregory
17.05.2016
17:51:03
точней еще для него нужен babel-polifill

Nikita
17.05.2016
17:51:07
❯ node --version v4.4.4 ❯ cat test.js 'use strict'; function *test() { yield 1; } const result = test(); console.log(result.next()); ❯ node test.js { value: 1, done: false }

ЧЯДНТ?

Google
Gregory
17.05.2016
17:51:14
так я и не говорю что нет генераторов

я говорю что для async/await они не юзаются

Artur
17.05.2016
17:51:37
если не с iojs
С нее самой

Gregory
17.05.2016
17:51:37
если бы они юзалилсь бы такого бы говня и не было

Nikita
17.05.2016
17:51:50
юзаются, как бы)

Gregory
17.05.2016
17:52:01
про TS ни кто не говорит

Artur
17.05.2016
17:52:01
Я async/await с прошлой осени юзаю

Не было проблем.

Влад
17.05.2016
17:52:10
Асинк эвэйт на уровне v8 пока не поддерживаются

Nikita
17.05.2016
17:52:29
[require('babel-plugin-transform-async-to-module-method'), { module: 'bluebird', method: 'coroutine' }]

Gregory
17.05.2016
17:52:31
Я это и писал

Nikita
17.05.2016
17:52:37
вот такое добавь в babelrc

Artur
17.05.2016
17:52:45
про TS ни кто не говорит
Ну я и бабелем раньше пользовался, до сих пор некоторые проекты с ним в качестве транспилера.

Gregory
17.05.2016
17:52:50
И он приобразовует в несамый производительный код

Artur
17.05.2016
17:52:55
Сейчас, кстати, гляну есть там бесконечные циклы

Gregory
17.05.2016
17:53:07
Давай

Влад
17.05.2016
17:53:22
Но тут ребята правильно говорили, что co с генераторами ничем принципиально от async await не отличается же

Nikita
17.05.2016
17:53:27
Асинк эвэйт на уровне v8 пока не поддерживаются
это может только через год работать нормально будет

и там будет все тот же bluebird.coroutine, только медленнее в пару раз.

Google
Artur
17.05.2016
17:53:51
Влад
17.05.2016
17:54:05
Если есть поддержка генераторов в движке — то асинк эвэйт в них можно компилять

Если нет — толтко в бесконечный цикл

Nikita
17.05.2016
17:54:25
промисы давным давно есть. Однако все нормальные люди используют bluebird на ноде. Или аналог

так что ключевое слово - нормальная поддержка

Влад
17.05.2016
17:54:55
Nikita
17.05.2016
17:55:03
на бэке?

Влад
17.05.2016
17:55:07
Да

Nikita
17.05.2016
17:55:21
и плевать, что они в 2-3 раза медленее bluebird?

Artur
17.05.2016
17:55:41
О, да, детка. Рилли while(1)

Влад
17.05.2016
17:55:45
Nikita
17.05.2016
17:55:45
и используются посути везде

https://github.com/petkaantonov/bluebird/tree/master/benchmark

Artur
17.05.2016
17:56:26
Меня мои аппки с TTFB в 5ms вполне устраивают...

Nikita
17.05.2016
17:57:22
эм, ну если это ок, то и while(true) ваще не проблема)

Artur
17.05.2016
17:57:27
Хотя есть желание ускорить, но не думаю, что замена нативных промисов на блюбирд мне что-то даст.

эм, ну если это ок, то и while(true) ваще не проблема)
Ну как я вижу, не проблема. Но на высоконагруженных частях я бы не стал использовать.

Nikita
17.05.2016
17:58:07
а тормознутые промисы стал бы?) где логика?

Artur
17.05.2016
17:58:08
У меня коллега бывший гоняет полтора млрд запросов на ноде в сутки.

Но без этих примочек.

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