# lv-server

> Standalone LevelDB file server.Put data into it using multilevel and get it served over socket.

Latest version **2.0.11** (published 2022-12-15) · ISC license · 0 weekly downloads

## Install

```sh
npm install lv-server
pnpm add lv-server
yarn add lv-server
bun add lv-server
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.0.11 |
| Published | 2022-12-15 |
| First published | 2016-11-14 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 22.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | codeorg |
| Keywords | level, leveldb, server, pool, socket |

## Links

- npm: https://www.npmjs.com/package/lv-server
- npm.io page: https://npm.io/package/lv-server

## Dependencies (3)

- [level](https://npm.io/package/level.md) ^8.0.0
- [co-log](https://npm.io/package/co-log.md) ^2.1.5
- [co-util](https://npm.io/package/co-util.md) ^2.1.1

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 2.0.11 (latest) — 2022-12-15
- 2.0.10 — 2022-12-15
- 2.0.9 — 2022-12-13
- 2.0.8 — 2022-12-06
- 2.0.7 — 2022-12-05
- 2.0.6 — 2022-11-28
- 2.0.5 — 2022-11-27
- 2.0.4 — 2022-11-27
- 2.0.3 — 2022-11-25
- 2.0.2 — 2022-11-25
- 2.0.1 — 2022-11-24
- 2.0.0 — 2022-11-24
- 0.1.34 — 2022-03-12
- 0.1.33 — 2022-03-12
- 0.1.32 — 2021-12-08
- … 31 more at https://npm.io/package/lv-server/versions

## README

# lv-server
基于leveldb网络缓存服务，支持服务器集群，用户密码认证，对数据生命周期管理.
此package为服务端，客户端调用连接用[`lv-client`](https://www.npmjs.com/package/lv-client)
## Install
```git
npm i lv-server
```
## Usage
```js
import {LevelServer} from 'lv-server'

const levelServer = new LevelServer(options)
levelServer.createServer()

```
## options
Options相关参数
- `'port'` - `number`类型，监听商品
- `'users'` - `Array<object>`类型，认证用户
    - `'username'` - `string`类型，用户名
    - `'password'` - `string`类型，密码
- `'path'` - `string`类型，数据和日志存放路径
```js
const options= {
    port: 7777,
    users: [{username: 'user1', password: '123123'}],
    path: '/opt/yourpath'
}
```

## Event
### `levelServer.on(eventName[, msg])`

- `'listening'` - 监听中，正常运行事件
- `'error'` - 出错事件，出错可进行重启

```js
levelServer.on('listening', (port) => {
    console.log('服务已经启动,端口:', port);
})

levelServer.on('error', (err) => {
    console.error(err);
    if (err.code === 'EADDRINUSE') {
        console.error(`端口:${config.port}被占用`);
    }else{
        setTimeout(() => {
            console.log('重启服务');
            levelServer.createServer();
        }, 1000);
    }
})

levelServer.on('query', (query,reslut,timespan) => {
    if(!timespan){
        console.log('START',query);
    }else{
        console.log('END',reslut,timespan);
    }
})
```

---
_Source: https://npm.io/package/lv-server · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
