Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.10.2010, 12:58
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Comet: NodeJS - с чего начать разработку?
Приветствую всех кто читает этот топик, примерно две недели назад услышал про серверный JavaScript, заинтересовался, начал выбирать подходящую реализацию, выбрал перспективный и динамичный NodeJs построенный на V8 от Google. Сейчас поставил себе задачу реализовать comet-сервер для проекта, NodeJs на VPS поставил, протестил, всё отлично работает. Далее нашёл на этом сайте пример comet-сервера на NodeJS. Попробовал его запустить через NodeJS, запуск произошёл, а никаких сообщений не выдало(например о состоянии соединения). Вот вопрос, на который не могу найти нигде ответ, облазил все статьи на Хабер по этому вопросу, там ничего на офф. сайте только английская документация, в которой не разберёшься. Вопрос следующий, как вообще на страницу внедряется NodeJS и как он используется? Вот например этот пример сервера, что с ним делать? Если не встречался кто-то с этим то подскажите пожалуйста пример реализации long-polling запросов. Заранее спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 28.10.2010, 13:21
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Vulkan
как вообще на страницу внедряется NodeJS и как он используется?
node.js на страницу не внедряется, он на сервере работает. Вместо PHP, например.
Ответить с цитированием
  #3 (permalink)  
Старый 28.10.2010, 13:25
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Ага, так понятно, у меня сейчас проект написан на PHP+Redis(key-value БД), вот чтобы мне создать comet-сервер на NodeJS, что нужно будет сделать? Чтобы например при поступлении сообщения на сервер страница на которой открыта связь с сервером дала уведомление.
Ответить с цитированием
  #4 (permalink)  
Старый 28.10.2010, 13:28
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Это слишком общий вопрос. Чтобы создать comet-сервер, нужно создать comet-сервер. Это вообще не вопрос, это задача.
Ответить с цитированием
  #5 (permalink)  
Старый 28.10.2010, 13:35
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

А примеры Long-polling не можете подсказать(только не на Jquery)?
Ответить с цитированием
  #6 (permalink)  
Старый 28.10.2010, 13:51
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

long-polling со стороны клиента ничем не отличается от обычного запроса, он просто отвечает не сразу. Сервер же в это время держит соединение, и как только что-то надо рассказать клиенту, сбрасывает данные и закрывает соединение.
Ответить с цитированием
  #7 (permalink)  
Старый 28.10.2010, 13:57
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Kolyaj, расскажите пожалуйста как можно это соединение держать?
Ответить с цитированием
  #8 (permalink)  
Старый 28.10.2010, 14:03
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Не надо его держать, оно само держится, пока не вызван response.end().
Ответить с цитированием
  #9 (permalink)  
Старый 28.10.2010, 14:04
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

require('http').createServer(function(req, res) {
    setTimeout(function() {
        res.writeHead(200);
        res.write('Hello');
        res.end();
    }, 5000); // Отвечаем только через 5 секунд.
}).listen(8080);
Ответить с цитированием
  #10 (permalink)  
Старый 28.10.2010, 14:28
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Kolyaj, спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вольтметр. С чего начать??? Гость Элементы интерфейса 5 08.09.2011 20:03
Превьювер - подскажите с чего начать? Travolta Общие вопросы Javascript 1 07.02.2010 14:22
ТУЛ - бар подскажите с чего начать lex Общие вопросы Javascript 0 12.01.2010 23:14
Помогите с чего начать jQuery jei Я не знаю javascript 3 08.06.2009 22:50