https://github.com/kessler/node-loadbalance-middleware
A middleware that load balance requests between several other middlewares
https://github.com/kessler/node-loadbalance-middleware
Last synced: 8 months ago
JSON representation
A middleware that load balance requests between several other middlewares
- Host: GitHub
- URL: https://github.com/kessler/node-loadbalance-middleware
- Owner: kessler
- License: mit
- Created: 2015-11-09T01:21:37.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-05-24T18:16:30.000Z (about 10 years ago)
- Last Synced: 2025-10-08T18:18:54.074Z (8 months ago)
- Language: JavaScript
- Size: 5.86 KB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# loadbalance-middleware
**A middleware that load balance requests between several other middlewares**
[](https://www.npmjs.org/package/loadbalance-middleware) [](https://david-dm.org/kessler/node-loadbalance-middleware)
## example
`npm i loadbalance-middleware express`
```javascript
var express = require('express')
var loadbalance = require('loadbalance-middleware')
var app = express()
function m1(req, res, next) {
res.end('1')
}
function m2(req, res, next) {
res.end('2')
}
app.get('/', loadbalance.roundRobin([m1, m2]))
app.listen(3000, function (err) {
if (err) return console.error(err)
console.log('ready')
})
```
## install
With [npm](https://npmjs.org) do:
```
npm install loadbalance-middleware
```
## api
### `loadbalance.random(array)`
Creates a middleware that randomly (and evently) distributes requests between the middlewares specified in the provided array
### `loadbalance.roundRobin(array)`
Creates a middleware that distributes requests between the middlewares specified in the provided array in a round robin fashion
### `loadbalance.engine(engine)`
For more custom uses or tweaks, you can use any engine in [loadbalance](https://github.com/kessler/node-loadbalance)
## see also
[loadbalance module](https://github.com/kessler/node-loadbalance)
[dynamic-middleware module](https://github.com/kessler/node-dynamic-middleware)
## license
[MIT](http://opensource.org/licenses/MIT) © [yaniv kessler](blog.yanivkessler.com)