nodejs
nodejs - это платформа разработанная на основе V8 (Chrome JavaScript Runtime). Платформа разрабатывалась с главной целью улучшить скорость разработки, и возможности масштабирования сетевого решения. Он прост, лёгок, и отличный выбор для мощных real-time сетевых приложений. Язык: JavaScript. Язык для разработки Модулей: C / C++ / JavaScript. Это молодой инструмент, но на столь мощный и своеобразный, что уже имеет огромное сообщество, конференции и тренинги, также крупные компании используют nodejs для своих проектов, где классические решения проигрывают многократно. Основное отличие nodejs как серверного решения заключается в парадигме программирования - event-driven. По сути это JavaScript с кучей callback'ов. Т.к. большинство задачь выполняются асинхронно, то это минимизирует задержку главного потока для ожидания например пока жётский диск читает файл или пока приложение записывает в базу данных документ. Таким образом нету никаких проблем с синхронизацией потоков или других проблем "простоев". Для разработки сетевых игр нацеленных на web аудиторию, nodejs как серверное решение - отличный выбор, т.к. позволяет разрабатывать клиент и сервер на одном языке, что даёт возможность использования кода с обеих сторон. Полезные ссылки: Список компаний и проектов. npm - менеджер модулей. Помогает легко и просто из командной строки устанавливать новые модули. socket.io - модуль для работы с WebSockets протоколом с fallback'ом в LongPoll. Для создания двусторонней real-time коммуникации сервера с клиентом. express - веб фреймворк позволяющий удобно и просто управлять route'ом и разрабатывать классическое веб приложение. Огромный список модулей (на любой вкус) Интересные примеры: BrowserQuest - MMORPG, экспериментальный проект при поддержке mozilla. Сервер написан полностью на nodejs. |
Ответ: nodejs
Зарезервированно для туториала установки.
|
Ответ: nodejs
Интересная штука, будет интересно почитать пару туторов)
|
Ответ: nodejs
Угу, работаю над мелким проектиком, оберну в маленький тутор.
Плюс, на том же socket.io есть сразу же примеры, очень просто запускаются. Но да, нужно сперва туториал по запуску. |
Ответ: nodejs
Готовая сборка NodeJS.exe
Попробуйте - запустится ли у вас "некая версия" NodeJS, без установки дополнительный файлов (сред запуска). После двух (1 и 2) неудачных попыток запуска других версий NodeJS по инструкции для которых требовалось установить сторонние среды разработки - нашёл эту сборку. Так как на нетбуке я уже устанавливал доп.программы, то у меня эта версия NodeJS.exe идёт. Но так же запускается, идёт и на "чистом стареньком ЭВМ", на котором я просто скопировал и запустил этот NodeJS.exe Возможно он запускается без дополнительных установок, проверьте. Так же я подготовил сборку для удобного использования, обновления модулей и несколько доступных примеров. MoKa как успехи? |
Ответ: nodejs
Успехи отлично, используем NodeJS + Express + MongoDB для одного коммерческого проекта, для реализации API и хранилища.
CMS пишется на HTML + JS + CSS, и общение с API происходит через AJAX. Для страниц с контентом, пишем на PHP и то что нужно выводить статично для SEO делаем curl запросы к API со стороны сервера (PHP). Скорость разработки в такой связке очень высокая, и дружелюбно к модификациям очень. Насчёт установки, я вот на новый комп ставил node, дык скачал 0.8.9 интсллятор, и просто поставил. Добавил PATH к бинарникам node, и готово. Ничего стороннего не нужно было ставить. Насчёт компиляции node, этим не заморачивался никогда, т.к. node рассчитан для использования только на стороне сервера, следственно делать какие-то exe'шки или бинарники не вижу смысла, если запуск самого проекта прост: node "имя файла". |
Ответ: nodejs
За ночь прочитал доки по node.js , через сутки начал делать чат на WS c помощью IO.scoket . =)
http://itlearn.ru/node/chat.php вот пример, нажимем connect, вводим логин ( рус/енгл), пишем в чат =) так же можно приватно общаться. т.к. привязал всё к ID сокса клиентов то приват не будет посылать , если человек перезайдет, заново придется в списке выбирать и писать =) в дальнейшем планирую сделать полноценную регистрацию. хорошо есть поддержка mysql в node =) и привязку привата и всех сообщений делать по логину. |
Ответ: nodejs
Цитата:
Цитата:
Поэтому есть хорошее решение - замутить прокси на htaccess. В гугле полно инфы. Снижения производительности практически не будет. Цитата:
Только не забывай front-end оптимизировать, т.к. с одних смайликов у тебя можно в 5 раз снизить количество запросов на сервер, объединив не анимированные смайлы в одну тайловую текстуру, а затем использовать background-position. Теги и скрипты escape'ишь - молодцом. Насчёт mysql я бы не использовал. Ну для node, mongodb во много удобнее и шустрее, и практичнее. А вот авторизацию, сделал бы локально доступный скрипт в php, в который node смог бы обращаться предоставляя уже хешированный пароль и логин, а php скрипт выдовал бы результат. Этакий прокси авторизация. Т.к. на php уже есть авторизация, и лучше не плодить код, а остаться зависимым от него, если конечно в будущем не планируешь изменять что-то в плане языков и сильных перемен в backend'е. |
Ответ: nodejs
у меня появилась идея и на этом
возник вопрос к moka что если по типу этого примера привязать сеть в Unity через nodejs? т.е. nodejs будет организовывать многопоточную сеть, а Unity - обрабатывать графику и передавать данные. можно даже не counter-strike сервер писать, а хотяб минимум bomberman как идея? хотя вроде будет страдать синхронизация javascript-а... пока данные туда-сюда unity-nodejs передадутся.. но всё же, идея изначально жива или нет? |
Ответ: nodejs
Вполне жива. По факту очень многие начинают первые зачатки и прототипы серверов на node.js т.к. это легче и быстрее.
По производительности, на первое время можешь не париться. PAX, экспериментировал с node.js + unity связкой не мало, я не знаю на сколько далеко все зашло, поинтересуйся у него. |
Ответ: nodejs
C многопоточностью я не игрался, там надо запускать не просто node js, а node fibers или что-то такое. А так проект я давно не развиваю, времени нет. Сеть была TCP, до UDP не добрался нормально.
|
Ответ: nodejs
Мультипоточность как таковой не нужна.
Все что нужно это worker'ы, и логика твоего сервера чтобы могла горизонтально скейлиться. Следственно асинхронная микро-сервис архитектура - решение в горизонтальном масштабировании здесь. |
Ответ: nodejs
что-то я ничего не могу понять.... Как пользоваться этой штукой?
Скачал, установил, в консоли пишу: node потом пытаюсь запустить скрипт (лежит в корне диска С) в ответ получаю: ... и тишина |
Ответ: nodejs
наверное так:
Код:
node C:\1.js |
Ответ: nodejs
тоже самое
-------------- плиззз :( |
Часовой пояс GMT +4, время: 02:02. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot