
Rafael
12.06.2017
18:37:10
Ребзь, вебворкеры === потокам?
т.е допустим если мне нужно замутить мьютекс лапорта, то не будет разницы если я запущу несколько инстансов ноды и общение через сокеты или просто внутри одного скрипта запущу столько же вебворкеров?

Ywein
12.06.2017
18:47:28
Это ж браузерное апи

Google

Rafael
12.06.2017
18:48:02

Ywein
12.06.2017
18:49:14
ээ, это же v8
V8 это интерпретатор js, он не имеет отношения к браузерным апи

Daniel
12.06.2017
18:49:26
В ноде можно процессы запускать и так
Вебворкеры точно так же общаются сообщениями

Ywein
12.06.2017
18:51:08
Просто нода многие функции браузерных апи имплементирует
Допустим setTimeout в js отсутствует

Дмитрий
12.06.2017
18:51:39
rtfm
В ноде cluster
Но да, это отдельные потоки

Artem
12.06.2017
18:52:37
процессы же

Дмитрий
12.06.2017
18:52:54
Ждём SharedArrayBuffer, будет вообще пушка

Ywein
12.06.2017
18:53:45
Там еще есть child_process

Google

Ywein
12.06.2017
18:54:00
Это очень близко к вебворкерам

Дмитрий
12.06.2017
18:55:08
По факту, да
Даже видел либы, унифицирующие подходы

Rafael
12.06.2017
18:56:10
так, тогда подскажи что юзать для имитации распределенной системы

Artem
12.06.2017
18:56:30
распределённости в каком плане? Между разными машинами?

Rafael
12.06.2017
18:56:57

Artem
12.06.2017
18:57:17
тогда вроде у тебя алтернатив сокетам нет

Дмитрий
12.06.2017
18:57:38
Если реально эмулировать, то очевидно что у тебя выбора особого нет и нужно делать модель максимально бллизкую к референсу

Rafael
12.06.2017
18:57:43
тогда нужно скрипт для развертки писать

Дмитрий
12.06.2017
18:58:37
Просто используй докер)

Rafael
12.06.2017
18:58:44

Artem
12.06.2017
18:58:46
в юникс можно процессы + pipe
тебе насколько важна "эмуляция"? Если пофигу на трансфер, то можно и в контексте одного потока всё делать, общението асинхронное

Дмитрий
12.06.2017
18:58:52
Тем не менее, для тебя тогда будет достаточно cluster
Хахах, годный ник))

Rafael
12.06.2017
18:59:37

Artem
12.06.2017
19:02:00

Rafael
12.06.2017
19:03:19
такс, какая нода поддерживает async await из коробки?

Google

Дмитрий
12.06.2017
19:03:47
7.6+

Artem
12.06.2017
19:03:48
http://node.green/

Rafael
12.06.2017
19:04:31
сяб

Ywein
12.06.2017
19:26:32

Rafael
12.06.2017
19:27:28

Daniel
12.06.2017
19:27:39
Так стоп, если на одной машине, то можно общатсья встроенными инструментами
родительский процесс может с дочерними
форкнутыми

Rafael
12.06.2017
19:27:51

Daniel
12.06.2017
19:27:53
с помощью сообщений

Rafael
12.06.2017
19:28:04

Daniel
12.06.2017
19:28:15
child_process в ноде

Daniel
12.06.2017
19:28:15
модуль

Ywein
12.06.2017
19:28:24
Что может быть проще)

Rafael
12.06.2017
19:29:00
5 - 10?

Ywein
12.06.2017
19:29:09
5 - 10?
Порты не закончатся от этого)

Daniel
12.06.2017
19:29:39
ну есть же child_process, можно спавнить с параметрами как в командной строке

Google

Daniel
12.06.2017
19:29:45
у них есть мессваджи встроенные
это в ноде уже давно

Andrew
12.06.2017
19:29:53

Ywein
12.06.2017
19:30:32

Daniel
12.06.2017
19:32:11
ну да, кластер даже проще

Rafael
12.06.2017
19:32:54
все таки вы за то, чтобы поднимать отдельные ноды? и общение через socket io?

Daniel
12.06.2017
19:34:08
вообще для таких вещей есть более специализированные вещи
типа RabbitMQ

Admin
ERROR: S client not available

Daniel
12.06.2017
19:34:24
если уж общаться между процессами в классическом понимании
где все равноправны

Ywein
12.06.2017
19:34:34

Саша
12.06.2017
19:34:36
дада кстати

Rafael
12.06.2017
19:35:03
Ради дз поднимать rabbitMQ это оверхед

Саша
12.06.2017
19:35:20
с реббитом становится удобнее общаться между микросервисами

Daniel
12.06.2017
19:35:35
тогда лучше подними один скрипт, который спавнит чайлд процессы через встроенный модуль и общается с ними
хотя, сокет ио
это всегда решение, грубое
но решение

Сергей
12.06.2017
19:35:53
https://medium.com/dev-channel/es6-modules-in-chrome-canary-m60-ba588dfb8ab7

Google

Ywein
12.06.2017
19:36:00
Разве не удобней?

Daniel
12.06.2017
19:36:24
кластер однотипные поднимает, или я неправильно понимал его суть

Ywein
12.06.2017
19:37:27
Если нет то просто отдельные ноды

Сергей
12.06.2017
19:39:30

Daniel
12.06.2017
19:39:33
да
полноценная поддержка ес6 модулей была
с сентября

Сергей
12.06.2017
19:39:46

Daniel
12.06.2017
19:44:27
Не могу найти по дате нормально, но с 10.1 поддерживается полностью
я примеры читал ещё зимой

Сергей
12.06.2017
19:45:52
ща проверим
Сафари умеет
Хром 61+ канарейка не смог
вообще не пишет ничего
ни ошибок нифига
А нет
я не тот флаг активировал
модули теперь работают в хроме