Gregory
для прода сейчас не знаю, хорошо или плохо. Смотря какие нагрузки
Vlad
в шестой ноде нативные промисы
Vlad
почему они будут ковертироваться async/await конвертируется в infinite loop?
Konstantin
для прода сейчас не знаю, хорошо или плохо. Смотря какие нагрузки
отлично в проде работают… нагрузка 200 тыщ в день, 3-5 тыщ онлайн
Gregory
потому что их так конвектирует бейбл
Kanstantsin
..разве не в генератор с промисами? там нету while..
Kanstantsin
если не для 5,6 ноды - функция с while, для node 5,6 - в генератор с промисами транспилится
Denis
Все места на Node.js Meetup были разобраны сегодня утром (меньше чем за сутки), но только что освободилось одно место - успевайте http://www.meetup.com/Moscow-NodeJS-Meetup/events/231141123/
Gregory
посмотри то во что привращается async/await
Artur
..разве не в генератор с промисами? там нету while..
Во, во. У меня TS 1.8 в wrap/yield прекомпилирует.
Artur
посмотри то во что привращается async/await
Ну так меня ввело в заблуждение: 1) koa ничего не компилит, это делает транспилер; 2) Транспилер TS не генерирует бесконечных циклов
Gregory
while(true) с внутреними switch которые решают что когда делать
Gregory
Я и не говорю
Artur
Неужто babel такое делает О_О
Gregory
что koa что то комплит, koa2 просто в основе юзает async/await
Nikita
это если yield не поддерживается
Nikita
на бэке yield поддерживается уже давным давно
Gregory
какая у тебя нода?
Gregory
не у всех на проде 6, я с 6 еще не пробовал
Nikita
эм, с 4 поддержка норм
Nikita
если не с iojs
Gregory
у меня 4
Gregory
не потдерживается
Artur
что koa что то комплит, koa2 просто в основе юзает async/await
Это практически ничем не отличается от генераторов, просто * сменили на async а yield на await.
Gregory
я тестами транслирую код и смотрю что там внутри, и вот там говно редкое
Gregory
Не совсем
Artur
не у всех на проде 6, я с 6 еще не пробовал
Я уже года полтора или два использую yield начиная с появления его поддержки в iojs.
Vlad
не потдерживается
На 4-ой поддерживается, инфа 100%
Gregory
4.0.2
Artur
А версии обновляю, естественно, по мере выхода.
Artur
Если проект в разработке, разумеется.
Vlad
В 4-ой есть генераторы же, я сам лично использовал
Vlad
А вот async/await есть только в бабеле пока
Gregory
точней еще для него нужен babel-polifill
Nikita
❯ 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 }
Nikita
ЧЯДНТ?
Gregory
так я и не говорю что нет генераторов
Gregory
я говорю что для async/await они не юзаются
Artur
если не с iojs
С нее самой
Gregory
если бы они юзалилсь бы такого бы говня и не было
Nikita
юзаются, как бы)
Gregory
про TS ни кто не говорит
Artur
Я async/await с прошлой осени юзаю
Artur
Не было проблем.
Vlad
Асинк эвэйт на уровне v8 пока не поддерживаются
Nikita
[require('babel-plugin-transform-async-to-module-method'), { module: 'bluebird', method: 'coroutine' }]
Gregory
Я это и писал
Nikita
вот такое добавь в babelrc
Artur
про TS ни кто не говорит
Ну я и бабелем раньше пользовался, до сих пор некоторые проекты с ним в качестве транспилера.
Gregory
И он приобразовует в несамый производительный код
Artur
Сейчас, кстати, гляну есть там бесконечные циклы
Gregory
Давай
Vlad
Но тут ребята правильно говорили, что co с генераторами ничем принципиально от async await не отличается же
Nikita
Асинк эвэйт на уровне v8 пока не поддерживаются
это может только через год работать нормально будет
Nikita
и там будет все тот же bluebird.coroutine, только медленнее в пару раз.
Vlad
Если есть поддержка генераторов в движке — то асинк эвэйт в них можно компилять
Vlad
Если нет — толтко в бесконечный цикл
Nikita
промисы давным давно есть. Однако все нормальные люди используют bluebird на ноде. Или аналог
Nikita
так что ключевое слово - нормальная поддержка
Nikita
на бэке?
Vlad
Да
Nikita
и плевать, что они в 2-3 раза медленее bluebird?
Artur
О, да, детка. Рилли while(1)
Nikita
и используются посути везде
Nikita
https://github.com/petkaantonov/bluebird/tree/master/benchmark
Artur
Меня мои аппки с TTFB в 5ms вполне устраивают...
Nikita
эм, ну если это ок, то и while(true) ваще не проблема)
Artur
Хотя есть желание ускорить, но не думаю, что замена нативных промисов на блюбирд мне что-то даст.
Artur
эм, ну если это ок, то и while(true) ваще не проблема)
Ну как я вижу, не проблема. Но на высоконагруженных частях я бы не стал использовать.
Nikita
а тормознутые промисы стал бы?) где логика?
Artur
У меня коллега бывший гоняет полтора млрд запросов на ноде в сутки.
Artur
Но без этих примочек.
Artur
а тормознутые промисы стал бы?) где логика?
Я про промисы ничего не говорил. Стримы и колбэки only.
Artur
а тормознутые промисы стал бы?) где логика?
Хотя вопрос тормознутости тут явно преувеличен.