0.0.3 • Published 9 years ago

level-fancy-server v0.0.3

Weekly downloads
3
License
MIT
Repository
github
Last release
9 years ago

level-fancy-server

Custom leveldb database server meant to be used with one or more level-fancy clients. Uses multi-level for multiple tcp client connections, sublevel for key organization, level-live-stream for pub/sub functionality, level-sec for secondary indexes, and memdown for optional in memory data storage.

Can run as a standalone server or run within a node application.

##Status Work in progress.

Usage

cd level-fancy-server
npm install

Start a standalone server with default settings

node server --start

Start with custom settings. Pass in path to configuration file

node server --start ./path/to/customConfig.js

Can also be started and stopped programatically

var Server = require('level-fancy-server').Server
var client = require('multilevel').client(manifest)

//returns the multilevel server which multi level clients can connect to
var server = new Server().start()

server.pipe(client.createRpcStream()).pipe(server)

client.sublevel.put ...
...
//shut down server
server.stop()

If you want direct access to the leveldb database not the multi level wrapper, then do this

var server = new Server()
var multilevel = server.start()
//access the db object on server
server.db.sublevel.put ...

Configuration

View default configuration file: config.js

By default the database uses in memory storage with memdown. Comment out db:require('memdown') to enable storage to disk.

See level-fancy for connecting with clients.