Skip to content

Proof of concept - Long polling message queue with CouchDB for persistence.

Notifications You must be signed in to change notification settings

davidjrice/node-comment

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node Comment PoC

Running

  1. Make sure you have a CouchDB running on localhost:5984, otherwise edit config/default.js

  2. Create a new CouchDB database called 'node-comment'

  3. Run the push/poll server in a terminal each

     # Terminal A
     $ node bin/poll_server.js
    
     # Terminal B
     $ node bin/push_server.js
    
  4. Navigate to http://localhost:8011/

You should now be able to send messages through the push.html page and see them appear on pull.html.

Design

bin/push_server.js provides a HTTP server that receives message via JSONP and stores them as CouchDB documents.

bin/poll_server.js listens to CouchDB's /_changes stream to find out about new messages coming in. It then delivers the new messages to any clients that are listening.

Configuration

The poc can be configured by modifying the config/default.js file. However, the poll.html page has the poll port hardcoded for now.

Dependencies

  • node-couch: CouchDB connector. Had to fix it to work with latest node version. I'd prefer to write a better one, but it does the job for now.
  • node-paperboy: A node module I wrote to serve static HTML/JS/etc. files
  • jquery: Hopefully your JS library of choice : )
  • jquery-jsonp: jQuery has only minimal JSONP support. This plugin has all the goods!

About

Proof of concept - Long polling message queue with CouchDB for persistence.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 99.5%
  • Ruby 0.5%