@symfony_php

Страница 236 из 1418
Sergey
17.06.2017
09:54:40
а че не сделать все последовательно?

Sir
17.06.2017
09:55:05
Слишком много времени уйдет

Если мы берем A[i] Обрабатываем первым способом.. потом ждем 40 секунд Обрабатываем вторым способом.. опять ждем

А так, вместо этого ожидания можно взять пока и сделать обработку первым способом для, скажем, A[i+1]

Google
Sir
17.06.2017
09:56:10
не простаивать, короче

Sergey
17.06.2017
10:26:40
что есть "обработка строки"

Но над одним A[i] работать одновременно нельзя
то есть ты хочешь организовать что-то типа пайплайна

мол допустим у нас есть воркеры N1, N2, ... N5 каждый из которых обрабатывает по своей стратегии

Sir
17.06.2017
10:27:47
Ну да

похоже на то, что я хочу

Sergey
17.06.2017
10:28:48
1. N1 работает над a[i], остальные простаивают 2. N1 работает над a[i+1], N2 работает над a[i], остальные простаивают 3. N1 работает над a[i+2], N2 работает над a[i+1], N3 работает над a[i]....

то есть мы имеем 5 очередей

как только N заканчивает работу он кидает эту же задачу для N+1

Sir
17.06.2017
10:29:16
Подожди..

В идеале N1 работает над a[1] N2 работает над a[2] N1 закончил работу над a[1] берет a[3] N2 закончил работу над a[2] берет a[1] N1 закончил работу над a[3] берет a[4] N2 закончил работу над a[1] берет a[3]

Ну и если воркеров больше, думаю понятно

Google
Sergey
17.06.2017
10:30:57
читал "goto considered harmful?"

там как раз про такие вот "алгоритмы"

Sir
17.06.2017
10:31:22
Нет, н читал, к сожалению

Прочитаю)

Но вот в чем проблема

Sergey
17.06.2017
10:31:51
ну то есть да, при моем варианте мы теряем чуть-чуть на производительности пайплайна, но зато нам не надо ничего синхронизировать

lock-free

причем теряем мы только для первых 5-ти строк

и последних

Sir
17.06.2017
10:32:18
хм..

Sergey
17.06.2017
10:32:40
то есть N1 взял, поделал работу, переложил ее в очередь для N2

Sir
17.06.2017
10:32:47
Нельзя, чтобы N2 принимался за работу над N1 сразу же

Sergey
17.06.2017
10:32:48
N2 взял из очереди задачу - поработал, положил в N3

Нельзя, чтобы N2 принимался за работу над N1 сразу же
а он и не будет, он будет как только N1 переложит задачу из своей очереди в очередь для N2

Sir
17.06.2017
10:33:23
Должен быть интервал между обращениями к одному и тому же A[i] (40 секунд)

Sergey
17.06.2017
10:33:23
все строго последовательно

там есть отложенные задачи

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

и будут тупые воркеры которые берут задачи и делают их

Google
Sergey
17.06.2017
10:34:45
ну и beanstalkd простой как пробка

это не монструозные кролики

либо даже еще проще

пихаем задачи в очередь

Sir
17.06.2017
10:35:58
В общую?

Sergey
17.06.2017
10:35:58
все воркеры берут по задаче

очередь будет тебе гарантировать что каждый воркер получит свою задачу и они не будут пересекаться

то есть N2 получит a[i+1], N3 получит a[i+2]... а может наоборот - тут кто проворнее окажется

Sir
17.06.2017
10:37:08
Я уже думал даже над таким вариантом.. Прописывать массив в таком формате.. Что делает|Кто делает|Когда делает И каждый будет получать только часть этого массива (скажем, каждую пятую строчку)

Sergey
17.06.2017
10:37:10
как только воркер заканчивает обработку, он может вернуть задачу в очередь для других с пометкой кто ее уже обрабатывал

ты можешь добавить делей для задачи что бы следующий воркер получил возможность ее забрать строго через 40 секунд

тут уже будет сложность только с тем что задача может зависнуть....

Sergey
17.06.2017
10:38:10
ну то есть 5 очередей было бы наверное прикольнее...

они в целом могут перебрасывать задачи.... ну то есть... варианты есть

но в любом случае я бы делал это на какой-нибудь очереди которая решает вопрос блокировок и делея

Sir
17.06.2017
10:39:12
Понравился этот вариант

ну то есть 5 очередей было бы наверное прикольнее...

Sergey
17.06.2017
10:39:12
beastalkd тут хорошо зайдет

Sir
17.06.2017
10:39:37
Ок, спасибо!

Sergey
17.06.2017
10:39:54
хотя мне все еще интересно почему там должен быть делей и что ты делаешь

Google
Sergey
17.06.2017
10:39:57
парсер небось какой

Sir
17.06.2017
10:40:19
Не хочу, чтобы меня камнями закидывали)

Но да, можно и так назвать

Sergey
17.06.2017
10:40:31
ну просто....

возможно тебе надо задачу разбить еще и тогда можно еще более эффективный пайплайн сделать

типа помимо стратегий еще и этапы

можно диаграмы Ганта порисовать)

Sergey
17.06.2017
10:55:58
интересно будут ли что-то делать с оптимизацией компиляции контейнера симфони или нет

а то 40 секунд как-то не серьезно

особенно если меняешь код и из-за этого протухает кеш

Admin
ERROR: S client not available

Dinar
17.06.2017
11:09:34
Есть ли какие нибудь хорошие пакеты с виртуальной клавиатурой? Но не jQuery. Что бы в вебпак нормально ставилось.

Dinar
17.06.2017
11:27:36
Да че-то ебли много при подключении в вебпак. Если честно так и не разобрался, как подключить, чтобы работало.

https://github.com/Mottie/Keyboard
Этот плагин тоже видел. Но тащить ради цифровой клавы целый jQuery UI - это оверкилл какой-то.

Google
Sergey
17.06.2017
11:29:30
не?

вот у меня сча проблема с .env

есть строчка

TITLE="Some Project Title"

если грузить через set -a; source .env

то все норм, а если через docker run --env-file .env то жрет с кавычками

Dinar
17.06.2017
11:31:04
Uncaught ReferenceError: jQuery is not defined at jquery.numpad.js:284

Вот такая фигня

Sergey
17.06.2017
11:31:18
Uncaught ReferenceError: jQuery is not defined at jquery.numpad.js:284
ну потому что ты jquery не подрубил в бандл

Dinar
17.06.2017
11:31:37
Как уж не подрубил, если я им там немного пользуюсь :)

Это в JS import 'jquery'; import 'jquery.numpad'; Это в webpack.config vendor: [ 'jquery', ] ... resolve: { alias: { jquery: "jquery/src/jquery", } },

А ну и new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery", "windows.jQuery": "jquery" }),

Jquery должен быть вообще везде :)

Sergey
17.06.2017
11:41:15
хз тогда)

Dinar
17.06.2017
11:43:04
Более того, я попробовал тупо файл подключить к странице через script

Он все равно говорит что не видел Jquery

https://www.youtube.com/watch?v=OiWwaddhGyA

Yuriy
17.06.2017
16:57:38
всем привет, есть сервис, его задача сохранить даные в небольшую табличку ($em->flush() выполняется в сервисе). подготовленые даные он сохраняет, но с ними еще обновляет предпоследнюю запись которая создавалась немного ранее, подскажите пожалуйста в чем проблема

Sergey
17.06.2017
16:58:38
ты видимо сделал персист записи, но не флашил в базу

вот за тебя uow и сделал работу

Yuriy
17.06.2017
17:04:44
да ты прав, флаш там был, только без сушности, вот он и не сработал спасибо

Daniel
18.06.2017
07:28:06
Нет ничего лучше, чем новый проект, где можно с 0 использовать Symfony 3.3

Страница 236 из 1418