@nodejs_ru

Страница 581 из 2748
Igor
12.02.2017
10:20:59
Т.е. он сам организует очередь?

Спасибо, сейчас почитаю

Дмитрий
12.02.2017
10:22:24
Ну это если по одной добавлять организует

Или логику писать для контроля. В bluebird есть map with concurrency

Google
KlonD90
12.02.2017
10:23:22
Контекста нету

Igor
12.02.2017
10:23:33
Ну это если по одной добавлять организует
Вот сейчас как раз метод в документации этот ищу...

KlonD90
12.02.2017
10:24:02
У тебя пул мог закончится. Коннекты высвобождаются?

Дмитрий
12.02.2017
10:24:30
https://github.com/zerobias/knack

Я такую штуку себе сделал

Igor
12.02.2017
10:25:17
Контекста нету
Абстрактный пример из живого: for (let i = 0; i < 1000; i++) { app.models.Task.create( { domain: 'a.ru', data: link, status: 0, }, (err, model) => { if (err) throw err; console.log('Created:', model); } ); }

https://github.com/zerobias/knack
Вооот, это похоже то что нужно...

Вот сейчас как раз метод в документации этот ищу...
Собственно решение c помощью async: let q = async.priorityQueue(function (task, callback) { task(callback); }, 10); for (let i = 0; i < 1000; i++) { q.push((cb) => { app.models.Task.create( { data: i, }, (err, model) => { if (err) throw err; cb(); } ); }); }

Помогла вот эта статья: http://www.sebastianseilund.com/nodejs-async-in-practice

Evgeny
12.02.2017
11:00:51
Ппц. Такие мелочи надо писать самому хотя бы для того чтобы потом не было вопросов как это сделать. Несколько строчек же, блин

Кирилл
12.02.2017
11:02:24
Не понял. В цикле делают асинхронные функции выполнющие SQL запросы?

оберни их в промисы и жди ресолва или сделай асинхронный цикл и все

Google
Vladimir
12.02.2017
11:07:50
Использовать либу асинк это плохо

Dreamerinnoise
12.02.2017
11:11:33
Сказали плохо, значит плохо

Igor
12.02.2017
11:12:03
Ппц. Такие мелочи надо писать самому хотя бы для того чтобы потом не было вопросов как это сделать. Несколько строчек же, блин
Не понял утверждения. Изобретать велосипед, вместо использования готового решения?

Сказали плохо, значит плохо
Аргументация? Альтернативное решение?

Vladimir
12.02.2017
11:12:38
аа

ааааааа

Vladimir
12.02.2017
11:13:06
асинк либа появилась когда в ноде ещё только коллбеки были

теперь у нас есть промисы

Дмитрий
12.02.2017
11:13:17
Сказали плохо, значит плохо
ето работает только с Абрамовым ?

Vladimir
12.02.2017
11:13:20
и уже асинкавейты

Кирилл
12.02.2017
11:13:46
Vladimir
12.02.2017
11:13:50
и кстати поэтому либа асинк нинужна

Stick
12.02.2017
11:13:57
Промисы привычнее

Igor
12.02.2017
11:14:09
Блин, да речь о переполнении памяти, вы о чем?

Vladimir
12.02.2017
11:14:13
о какой памяти?

если нужны дополнительные методы бери bluebird

Google
Igor
12.02.2017
11:15:23
В цикле вешаются обработчики на успешное выполнени запроса, если очередь не использовать и запустить такой цикл с 1 000 000 записей, то будет фэйл.

Что?
Что "что"? ?)

Дмитрий
12.02.2017
11:18:49
Собственно решение c помощью async: let q = async.priorityQueue(function (task, callback) { task(callback); }, 10); for (let i = 0; i < 1000; i++) { q.push((cb) => { app.models.Task.create( { data: i, }, (err, model) => { if (err) throw err; cb(); } ); }); }
Я приниципиально не стал на кал бэках реализовывать) У меня просто один раз получаешь обёрнутый метод, и потом вызываешь его в любом месте и порядке, все запросы будут вставать в очередь)

Igor
12.02.2017
11:23:00
Как раз эту чтраницу читаю

Andrew
12.02.2017
12:51:19
кто с sequelize работал?

мне при создании элемента модели надо некие операции выполнить, такое зя? прямо в ОРМ так сказать запихать

при create комментария к посту, у поста типо рейтинг прибавляется

например

Igor
12.02.2017
12:53:36
семафор не подходит для этого?

Andrew
12.02.2017
12:53:46
что это?)

Andrew
12.02.2017
12:54:03
ps я с этой орм не оч опытный

Igor
12.02.2017
12:54:15
не, я про очередь запросов

https://www.npmjs.com/package/semaphore

KlonD90
12.02.2017
12:54:18
Хуки

Andrew
12.02.2017
12:54:19
да и впринципе по бэку не селен

Хуки
вот я ща туды и залез

буду доку курить, спс за направление

KlonD90
12.02.2017
12:55:34
А вот то для чего ты хочешь не уверен что лучшая идея.

Google
Andrew
12.02.2017
12:56:17
а какая лучшая?

транзакции?

KlonD90
12.02.2017
12:57:53
Ну запихни лучше в транзакцию 2 операции

Andrew
12.02.2017
12:58:06
вот я тож об этом опдумал

тока в доке читаю и не догоняю, как их реализовать

типо обычную цепочку делаю и оборачиваю в sequelize.transaction

Admin
ERROR: S client not available

Andrew
12.02.2017
12:59:44
?

KlonD90
12.02.2017
13:00:13
Там есть managed и auto

Я только руками Где сам пишешь комит

Andrew
12.02.2017
13:01:17
понял

вроде догоняю

спасибо как вернусь буду делать))

Igor
12.02.2017
14:42:34
sequelize?
loopback

Klim
12.02.2017
14:43:45
поищи аналог

должны быть

Igor
12.02.2017
14:47:32
поищи аналог
Да уже решился вопрос примером выше... Меня не смутило использование очереди из async'a ?

Klim
12.02.2017
14:49:11
окей)

Google
Никита
12.02.2017
17:20:03
https://pbs.twimg.com/media/C4WvlyWVcAIWq8Q.jpg

Vladimir
12.02.2017
17:21:06
@ChALkeR когда 7.6 будет, не в курсе?

Никита
12.02.2017
17:21:52
Неа. Там разве не ждут нового v8 бэкпортированного?

Vladimir
12.02.2017
17:22:03
да вроде уже

Никита
12.02.2017
17:22:14
jasnell что-то писал про таймлайн, но я не помню

Или не он =). Я за 7.6 не очень следил.

Ilya
12.02.2017
17:25:04
А что там?

Никита
12.02.2017
17:26:12
А, да, v8 до 5.5 там уже обновили.

Ҫѐҏӗѫӑ
12.02.2017
17:32:31
говорят на макоси ломается билд

и вроде v8 в 7 ветке все еще 5.4

в 8 5.5

Ilya
12.02.2017
17:35:19
Что дает 5.5?

Ҫѐҏӗѫӑ
12.02.2017
17:35:50
async/await

Ilya
12.02.2017
17:38:07
Он же есть уже?

Под флагом

Никита
12.02.2017
17:44:41
Их 2.

v7.x и v7.x-staging

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