
Artur
15.04.2016
10:52:30
Я бы вообще это очередью не назвал. Тут даже не надо в очередь добавлять задачи.
Просто код из callNext выносишь в cal
*в call
Добавляешь глобальный каунтер

Google

Artur
15.04.2016
10:55:06
timeLimit = ms и opPerSec = sec
потом проверяешь набрал лимита или нет, если набрал делаешь await функции которая кинет промис с таймаутом до окончания лимита.

Алексей
15.04.2016
10:56:28
ну твоя идея в том что бы если летит 1000 запросов, сразу вешать 1000 таймаутов?

Artur
15.04.2016
10:56:46
Нет
Увас операции последовательные же
Какая разница какой размер пула?
Могу накидать пример
В общем виде

Алексей
15.04.2016
11:29:27
если два таких запроса сделать что будет?
doSomething([
'http://ya.ru/?1',
'http://ya.ru/?2',
'http://ya.ru/?3',
'http://ya.ru/?4',
'http://ya.ru/?5',
'http://ya.ru/?6',
'http://ya.ru/?7',
'http://ya.ru/?8',
'http://ya.ru/?9',
'http://ya.ru/?10',
]);
doSomething([
'http://ya.ru/?1',
'http://ya.ru/?2',
'http://ya.ru/?3',
'http://ya.ru/?4',
'http://ya.ru/?5',
'http://ya.ru/?6',
'http://ya.ru/?7',
'http://ya.ru/?8',
'http://ya.ru/?9',
'http://ya.ru/?10',
]);
параллельное выполнение правильно?

Artur
15.04.2016
11:31:15
А зачем так?
while ...
await doSomething(urls)
Это если несколько списков
У меня есть такой сервис, который получает список по API с лимитом 100, добавляет его в очередь и пока не выйдет следующую страницу не выбирает.

Google

Алексей
15.04.2016
11:32:17
у меня вообще нет списков. у меня сервис, который в разных своих частях дергает апи.

Artur
15.04.2016
11:32:25
Только у меня не лимит на время, а лимит на конкуренцию
Ну тоже самое
Ну тогда чуть-чуть переделать
Можно вот по задаче вопрос
Это получается типа пула к MySQL?
Есть адаптер некий, куда поступают запросы, на которые стоят лимиты
ПравильнО?

Алексей
15.04.2016
11:35:07
ну смотри, я когда то давно для ионика писал.
https://gist.github.com/beautyfree/670dd714aade3301e46d
щас просто хочется по приятнее как нибудь сделать. а то везде код чистенький красивенький, а это выглядит как то сложно уже.
там ограничение 3-4 запроса в секунду. т.е по сути нужно делать запросы с интервалом 300 миллисекунд

Artur
15.04.2016
11:37:14
А, ну тогда еще проще
Просто это переосмыслить надо

Алексей
15.04.2016
11:38:32
надо генераторы заюзать и на async await перейти. тогда наверное интересная штука получится)

Kanat
15.04.2016
11:46:50
с помощью ecmascript можно приложение на android написать?)

Alexander
15.04.2016
11:47:23
Ionicframework.com

Alexander
15.04.2016
11:47:38

Artur
15.04.2016
11:47:40
Разные подходы
Разные задачи

Google

Artur
15.04.2016
11:48:59
Кстати, без очередь промисов в вашем случае все равно не обойтись.

Kanat
15.04.2016
11:49:58

Artur
15.04.2016
11:49:59
Потому что вам надо во внешней функции ждать результата исполнения запроса, а без промиса или коллбэка ее не подождать.
https://github.com/yortus/asyncawait вот тут интересное по теме есть
Правда там своя реализация async/await.

Kanat
15.04.2016
12:06:05
Пиздато

Artur
15.04.2016
12:06:42
самое то, когда надо быстренько наговнокодить)

Kanat
15.04.2016
12:07:07

Artur
15.04.2016
12:07:22
Ну я и говорю, самое то, когда надо быстренько)

Kanat
15.04.2016
12:07:36

Tim
15.04.2016
13:06:51
обычно ыстренько наговнокодить заканчиваеться релизом в продакшн

Artur
15.04.2016
13:11:01
Это тоже верно. Золотой серединки не всегда удается достичь

Tim
15.04.2016
13:11:16
неа, надо норм писать с начала
и бить по рукам кто так не делает

Artur
15.04.2016
13:11:43
Можно не успеть за рынком и конкурентами

Tim
15.04.2016
13:11:44
и говорить нет начальству тоже
можно потом сильно опоздать

Artur
15.04.2016
13:12:02
Ну я понимаю, это больная тема

Tim
15.04.2016
13:12:07
если мы говорим не о сайте на вордпресс

Google

Artur
15.04.2016
13:12:16
Нет, не о нем

Tim
15.04.2016
13:12:28
который делает фрилансер за неделю и 150 баксов
то таки да

Artur
15.04.2016
13:12:39
Или 50 баксов

Tim
15.04.2016
13:12:58
надо там тесты писать, и думать наперед и автомейтить все
иначе ну его нафиг такое говно поддерживать
вы вот в аутсовсе работаете?

Admin
ERROR: S client not available

Tim
15.04.2016
13:13:30
или продукт?

Artur
15.04.2016
13:13:41
Есть просто такое мнение, что продукт нужен сейчас, потому что эти живые деньги и насрать на реализацию, потому что вот через неделю конкурент их заберет

Tim
15.04.2016
13:14:05
ну в таком случае можно сделать прототип и посмотеть что будет

Artur
15.04.2016
13:14:17
У меня множество проектов разной степени говнистости

Tim
15.04.2016
13:14:33
проблема в том что такой процесс становиться постоянным
и тогда жизнь боль

Artur
15.04.2016
13:14:47
Ну можно сказать, что прототип, просто слабали быстро из глвна

Tim
15.04.2016
13:14:58
а потом что с ним произошло?
переписали?

Artur
15.04.2016
13:15:10
А тут уже вопрос дальнейшего развития

Tim
15.04.2016
13:15:23
ну это вопрос вменяемости руководства

Artur
15.04.2016
13:15:36
Разумеется

Google

Tim
15.04.2016
13:15:50
и для меня вопрос буду ли я дальше работать тут или нет

Artur
15.04.2016
13:16:18
Если деньги пошли а байда продолжается, пора серьезно разговаривать
Естественно

Tim
15.04.2016
13:16:33
говорить всегда хорошо
@all ребят а кто на чем пишет?

Artur
15.04.2016
13:17:52
Сейчас все что связано с php и js
Больше с js

Tim
15.04.2016
13:19:32
ну а че какие фреймверки?

Alexander
15.04.2016
13:19:48
Давайте обширнее, у кого какой стек

Artur
15.04.2016
13:19:59
Вот это интереснее

Alexander
15.04.2016
13:20:43
Мой: CreateJS, webpack, mocha, ionic, electron, babel, eslint, istanbul
Еще полифилл fetch и маленькая либа для pubsub

Tim
15.04.2016
13:21:58
я вот полиглот пишу на Scala Java Js ClojureScript и немного Ruby

Alexander
15.04.2016
13:22:19
На одной работе?

Artur
15.04.2016
13:22:20
Стэк в контексте JS или вообще?

Tim
15.04.2016
13:22:35
основной стек конешн Scala (Play + Akka) + React
ну вообще да
у нас микросервисы и бывает по разному

Artur
15.04.2016
13:23:10
Ну это уже не совсем стек, инструментарий скорее

Tim
15.04.2016
13:23:18
+ chef для мереджмента инфраструкруты