pnode-store
v0.2.0
Published
Maintain a synchronized data store between connected Node.js applications
Downloads
2
Readme
In Development
Peer Store
A peer-to-peer data store using dnode
Features
- Fast
- All data is transfered over dnode
- Achieve about 1.2k replications/sec
- Replicate mutating operations
- Connections automatically recover
- Status pings and reconnects are controlled by upnode
- Create smart data buckets for control over replication
- Prefills buckets with peer data
- Implement your own bucket types
- Default bucket type is a plain object (pure memory)
- lru-cache bucket type is operational so you may set size and TTL.
- LevelDB bucket type in progress...
- Express session store built-in
Installation
npm install peer-store
Usage
Server A at 10.0.2.1:
var PeerStore = require("peer-store");
var store = new PeerStore({
peers: ['10.0.2.2'];
});
store.set('foo',42);
Server B at 10.0.2.2:
var PeerStore = require("peer-store");
var store = new PeerStore({
peers: ['10.0.2.1'];
});
store.set('bar',7);
On both Sever A and B:
store.getAll(function(data) {
console.log(data); // { foo: 42, bar: 7 }
});
Express/Conect session store
In addition to the above, do:
app.use(express.session({
store: store.sessionStore(),
secret: 'secr3t'
}));
Now all your sessions are magically shared
API
Todo...
Issues
dnode
depends on node-gyp
, so in order to npm install
on Windows, you'll need to follow the node-gyp
Installation guide. Unix and Mac requires python
and make
so it should just work.
Quick windows links:
- Download Python 2.7.5
- Download Visual C++ Express 2010
- Download Windows 7 SDK (Windows 7 Only)
Credits
Most of the work is being done by substack's dnode