@electron_ru

Страница 36 из 177
Sheldhur
27.06.2017
11:50:16
require('child_process').fork или cluster
а ты на форке оставил или на кластер перешел?

Sergey
27.06.2017
11:51:13
а ты на форке оставил или на кластер перешел?
кластер еще не пробовал) после того раза не попадались задачи с необходимостью порождения процессов)

но переписывать то что я делал, я точно не буду)

Sheldhur
27.06.2017
11:52:52
у меня просто приложуха в несколько окон и несколько воркеров, новое окно открываешь и они опять спавнятся

Google
Sheldhur
27.06.2017
11:53:43
хз как сделать, чтобы через воркеры, которые в первом окне заспавнились всё работало

Sergey
27.06.2017
11:55:04
тык не спавни, а форкай)

Sheldhur
27.06.2017
11:55:15
я форкаю

обозвал так просто

Sergey
27.06.2017
11:56:11
а че за воркеры?

кластер который?

Darth
27.06.2017
11:56:49
https://developer.mozilla.org/ru/docs/DOM/Using_web_workers

Sergey
27.06.2017
11:57:27
https://developer.mozilla.org/ru/docs/DOM/Using_web_workers
https://nodejs.org/api/cluster.html#cluster_class_worker

Sheldhur
27.06.2017
12:00:08
https://developer.mozilla.org/ru/docs/DOM/Using_web_workers
не эти воркеры, эти не работают так как надо. воркеры просто термин

тык не спавни, а форкай)
посмотрел, всё таки спавню. но форк то мне чем тут поможет?

Sergey
27.06.2017
12:02:49
ты делааешь спавн електрона - так?

у електрона есть 3 процесса. Следовательно спавн электрона родит еще 3 процесса

Sheldhur
27.06.2017
12:03:38
да, но как ноды

Google
Sheldhur
27.06.2017
12:03:43
с ключем

Sergey
27.06.2017
12:03:48
а форк - родит один процесс ноды внутри электрона

Sheldhur
27.06.2017
12:03:58
один процесс выходит

Sergey
27.06.2017
12:04:39
так, а в чем проблем, не пойму

с ключем
все таки решил сделать через задний проход)

Sheldhur
27.06.2017
12:06:46
а у меня как-то так выходит electron main electron etc electron render win1 electron main as node workerStations electron main as node workerDataSet electron render win2 electron main as node workerStations electron main as node workerDataSet

Sergey
27.06.2017
12:07:09
норм же? не?

Сергей
27.06.2017
12:07:38
Ух жесть

Sheldhur
27.06.2017
12:07:51
ну я хочу чтобы второе окно обращалось к воркерам из первого

а не спавнило свои

я конечно понимаю, что они сдохнут после закрыития

но память то жрут

Сергей
27.06.2017
12:08:25
Ipc для кого сделали?

Sheldhur
27.06.2017
12:10:10
ну это надо из win2 отправить событие в win1, оно отправит его воркеру, воркер отработает и отправит в win1, win1 передаст в win2

а это сериализация\десериализация жсончика

Sergey
27.06.2017
12:10:30
а что у тебя воркеры делают?

Sheldhur
27.06.2017
12:10:33
большого объема

крч пиздц

данные из базы достают и препарируют

Google
Sheldhur
27.06.2017
12:11:16
событие маленькое, дата большая :)

вот и думаю на кластер перейти или чтобы воркеры как http сервис работали

тогда можно будет их теребить из других процессов

Sergey
27.06.2017
12:12:57
а у меня как-то так выходит electron main electron etc electron render win1 electron main as node workerStations electron main as node workerDataSet electron render win2 electron main as node workerStations electron main as node workerDataSet
а у тебя этот процесс создания дочерних ококн и воркеров автоматизирован или в ручную прописал? Ну то есть я могу создать 10 окон как пользователь? и при этом у каждого будут по 2 работника

Sheldhur
27.06.2017
12:13:29
Ну то есть я могу создать 10 окон как пользователь? и при этом у каждого будут по 2 работникаага

Sergey
27.06.2017
12:14:02
ох епт, круто, но сложно)

кароче, чувак. ДАВАЙ КОД

Sheldhur
27.06.2017
12:15:15
много

Сергей
27.06.2017
12:15:17
Sheldhur
27.06.2017
12:15:57
а в чем проблема создать 10 окон и 2 воркера всего?
окна это по сути отдельный процесс и к воркерам из другого окна я доступа не получу

только через ipc через главное окно гонять

но мне этого не хочется делать, данные большие

либо как http сервисы делать

>к воркерам из другого окна я доступа не получу на прямую имеется ввиду

Sergey
27.06.2017
12:18:49
Код не покажешь?

Давай на гист, лучше гитхаб

Sheldhur
27.06.2017
12:19:13
не сейчас, пока так оставлю

Sergey
27.06.2017
12:19:24
Давай то что есть

Sheldhur
27.06.2017
12:19:28
ещё не готово, чтобы потыкать можно было :)

Google
Sheldhur
27.06.2017
12:19:36
я дольше гайд по запуску буду писать xD

потом покажу

Sergey
27.06.2017
12:19:49
Я не собираюсь тыкать) я только код посмотрю)

Sheldhur
27.06.2017
12:20:04
meh

какая часть конкретно интересует?

Sergey
27.06.2017
12:23:36
давай все) если не могёшь, то хотябы те файлы где у тебя траблы с воркероми

Sheldhur
27.06.2017
12:25:49
так трабл то нет, воркеры работают :) это вопрос оптимизации

Sergey
27.06.2017
12:26:20
но! ща так до вечера будем расуждать

Sheldhur
27.06.2017
12:28:38
ну общую тему я обозначил :) доступ к воркерам напрямую возможен только из процесса окна родившего их как вариант сделать http сервис, который бы висел на порту и к нему бы шли запросы из всех окон есть ли ещё варианты?

ещё интересно можно ли как-то иначе данные между процессами передавать, без сериализации\десериализации JSON

Sheldhur
27.06.2017
12:34:07
ога, даты на столько много, что она не вмещается в JSON

Sheldhur
27.06.2017
12:36:58
xD

1) мне страшно его показывать 2) всё на столько сложно, что без бутылки не разобраться

Sergey
27.06.2017
12:38:03
я тебя сейчас побью

Alex
27.06.2017
12:41:57
про канал можно подробнее?
https://nodejs.org/dist/latest-v6.x/docs/api/net.html#net_server_listen_path_backlog_callback

Sheldhur
27.06.2017
12:42:42
Google
Sheldhur
27.06.2017
12:42:54
там тоже через пайпы можно

Alex
27.06.2017
12:47:40
не понял чем это net.server похож на spawn? какой костыль? один создаёт сервер и слушает пайп, другой порождает новый процесс http.server тоже костыль, получается? если ты про то, что можно задать пайп, по которому порождённый процесс будет общаться с родителем, то это просто стандартный механизм IPC, общение через пайпы

Sergey
27.06.2017
13:03:53
в обморок упадешь!

у меня там пздц сложно ?

Sheldhur
27.06.2017
13:06:41
у меня там пздц сложно ?
ну вот тебе один воркер, для оценки масштаба пиздеца https://gist.github.com/sheldhur/77cac3296d4555e7cac785423be66cc7

Sergey
27.06.2017
13:07:51
давай теперь родителя

трепещи от ужаса!) https://github.com/SergProduction/crfet/blob/master/js/runEqual.js

Sheldhur
27.06.2017
13:10:41
в родителе redux action который по сути тупо запрос на получение данных отправляет

через process.send()

https://gist.github.com/sheldhur/250ea9bce5c855028ec4525b3681fa8e

Sergey
27.06.2017
13:14:47
понятно теперь

тебе нужно порождать работников не в реакте который привязан к окну, а в каком нибудь общем скрипте

уже не помню как

Sheldhur
27.06.2017
13:16:42
это ничего не изменит

из дочернего окна я не имею доступа к main процессу

Sergey
27.06.2017
13:22:48
создаещь отдельный файл, пишешь там ф-цию, перекидываешь туда нужные параметры, и получаеться у тебя один фаил будет создавать работников, не?

или это я уже на солнце перегрелся?

Sheldhur
27.06.2017
13:23:56
ммм...я наверное забыл сказать

у меня воркеры живут до смерти родителя

т.к. их создание отжирает 2-3 секунды

Страница 36 из 177