<commit_before>Load balancer with configurable scheduling and balancing.


### Usage:

Create a router with some delegates and a key extraction function.
```
var router = require('./aplomb')

router = new router({
    delegates: [                     // list of targets
        'http://192.168.0.14:8080',
        'http://192.168.0.14:2345' ],
    extract: function (connection) { // extract key from connection
        return connection.key },
    version: '1.0'
})

```

Reconfigure as you please; we'll redistribute for you. Grab the new
configuration whenever you like.

```
router.addDelegate('http://172.16.17.32:2381')
router.addDelegate('http://172.16.17.32:2382')
router.replaceDelegate('http://172.16.17.32:2382', 'http://172.16.17.32:2383')
router.removeDelegate('http://172.16.17.32:2381')

router.addConnection(3, { key: 'soup' } )
```


Use `evictable` to sniff out dead connections.

```
    var old;
    while (old = router.evictable('http://172.16.17.32:2382')) {
        console.log(old)
    }
```<commit_msg>Update README.<commit_after>Load balancer with configurable scheduling and balancing.


### Usage:

Create a router with some delegates and a key extraction function.
```
var Aplomb = require('./aplomb')

var aplomb = new Aplomb({
    bucketCount: 256,
    compare: function (a, b) { return a - b },
    extract: function (connection) { // extract key from connection
        return connection.key }
})

```

Add a delegate and we'll give you a delegation.

```
var delegation = aplomb.addDelegate('http://172.16.17.32:2381')

aplomb.addDelegation(1, delegation) // 1 is the key for this delegation

delegation = aplomb.replaceDelegate('http://172.16.17.32:2381', 'http://localhost:5000')

aplomb.addConnection(3, { key: 'soup' } )

aplomb.addDelegation(2, delegation)

```


Use `evictable` to sniff out dead connections.

```
    var old;
    while (old = aplomb.evictable('http://172.16.17.32:2381')) {
        console.log(old)
    }
```
{'fraction_non_alphanumeric': 0.15658362989323843, 'fraction_numerical': 0.07981698017285206, 'mean_word_length': 3.3733333333333335, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 11, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1282971', 'n_tokens_mistral': 761, 'n_tokens_neox': 643, 'n_words': 165}