Подтвердить что ты не робот

Может ли Node.js запускать клиентскую часть в Chrome со своим родным клиентом (скоро будет выпущен)

Скоро появится клиент Google Chrome. http://blog.chromium.org/2011/02/native-client-getting-ready-for-takeoff.html Это позволит запустить node.js в браузере, чтобы распределенные приложения могли общаться друг с другом без необходимости проходить через сервер?

4b9b3361

Ответ 1

node.js не является чистым кодом Javascript. Есть части, написанные на С++, поэтому это маловероятно.

Существует несколько возможностей для распределенной связи. Один из них - использовать Websockets api в браузере для связи с другими браузерами. Другой - запустить node.js в качестве отдельного процесса сервера на том же компьютере, что и браузер.

Этот второй вариант - лучший выбор для построения распределенного приложения, поскольку он уменьшает зависимость от браузера. Версия 0.5.0pre из node.js теперь строит ОК на Cygwin, и можно объединить основные компоненты Cygwin в качестве автономного бинарного файла для распространения на клиенты Windows. Раньше такие версии node.js были распространены таким образом.

Ответ 2

В настоящее время существует несколько решений, позволяющих запускать несколько модулей Node в хроме. Посмотрите на эти ссылки:

Ответ 3

На сегодняшний день Node.js не будет работать в NaCl, однако это может быть возможно в конце концов. Node использует движок JavaScript V8 для выполнения кода. В настоящее время нет надежного порта двигателя V8, который будет работать внутри NaCl.

Из комментария Брэда Чена от 28 января 2014 года в теме "Кто-нибудь пробовал переносить Blink и V8 на собственный клиент?":

V8 был перенесен на собственный клиент, хотя порт использовал неприятный трюк, когда V8 генерирует инструкции ARM, а затем использовать портативный ARM-интерпретатор, чтобы избежать необходимости генерации генераторов кода V8 к NaCl. Вы должны уметь наблюдать это, проверяя источник V8 и следуя стандартным инструкциям по сборке/тестированию с использованием целей nacl_ia32 или nacl_x64.

https://groups.google.com/d/msg/native-client-discuss/Xw5yCe3Ubwc/fgm6M092DXwJ

Учитывая, что V8 уже удалось запустить под NaCl, хотя и с ненадежным взломом, разумно предположить, что Node может в конечном итоге работать в NaCl. Я понимаю, что ваш вопрос сейчас три года, но решил, что я дам обновленный ответ, так как в браузере теперь работает собственный код (даже код OpenGL).

Ответ 4

Вы не можете запустить Node.js в браузере.

Однако, если вы хотите подключиться к P2P, возможно, если в браузере установлена ​​последняя версия Flash (Flash 10). В последней версии они внесли RTMFP, которые позволяют вам выполнять P2P-соединение без прохождения через сервер. Если вы хотите использовать его в Javascript, вы можете создать мост, или вы можете взглянуть на проект, который я недавно начал, который делает именно это.