Node.js Integration

Time slot: 
March 8th, 2:45 PM - 3:15 PM

BoF to discuss Node.js + Drupal.

Also on Wednesday -


few more notes...

potential areas for applying NodeJS integration:

  • messaging & notifications
  • message busing/queueing?
  • large broadcasts/blasts
  • [group] chat
  • pubsub pattern alternative? (compare/contrast to push_hub & feeds or a service like

Could we take something like invoking cron (via web UI, e.g. reports or devel links) or a 'check for updates' link and hand it off to NodeJS in a way that is non-blocking in the web UI, and then just notifies the user when the job is done?

Other ideas, suggestions?

Some notes from the session

node.js integration module

node & drupal talking ofver HTTP

authentication happens in drupal
node handles open sockets and what would kill your lamp stack
php’s memory being held up just to have a socket

api module other modules use to do stuff that interests them

node js subscribe module

channels of nodes
unsubscribe via a channel

helper module watches for comments entered on a node

1000 people subscribed to socket and connect to node



nodes drupal

client requests page from drupal

javascrip opens socket to node
connects - sends auth key - hands auth key over to drupal
node makes no node authentifcation signals
socket stays open - socket wants channels

shutdown messages

messages -
call center workers subscribe to message and get them right away - hard to do with polling

long running operations
give immediate feedback that operation started

nodejs ajax - d7 ajax framework
right commands like a synchronous requstion

if drupal depends on node js and it goes down --
forever (utility)
supervisor D
ways to manage

socket I/O
a way of extracting what the client and node uses as a transport
a lot of browsers don’t implement websock
FF yanked out of FF 4
socket io - is abstracted and will use whatever it can

Diamond Sponsors


Platinum sponsors


Gold Sponsors

Drupal Connect
Treehouse Agency
Chapter Three