{"_id":"redis-weighted-pool","_rev":"6-a1389ceae93e64ae9f37201db87c3407","name":"redis-weighted-pool","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"redis-weighted-pool","version":"0.1.0","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^22.2.3","jest":"^22.4.3","tslint":"^5.10.0","typescript":"^2.8.3"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"a665ad5c71f09fd4518641a492070944943bb71d","_id":"redis-weighted-pool@0.1.0","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-4QkyEJ4jg5Ltdvd4IyVNc3qDv6F1UdMAQcwreIN0QNJPePZ9yqJHe/zaqmiMIivE78ubBv7VLbDhLKCyiAYf8w==","shasum":"2ca0b0f2bc5a1e18952921af251c418e73bf1a5c","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.1.0.tgz","fileCount":11,"unpackedSize":35204,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+UMaCRA9TVsSAnZWagAAwOoP/iGSPcSb0M/ri+2PMBwl\no9mA1oB7kqJRgKQPKp+jWGMYrSfhrjvY74UyGu8+eBuetu2+I0tW4UylL7zM\nCgadKgL5uMW8CXc9fYzBpv/Mtu/mmLMKU0Jdko0meHUgY+kNv/xvN4+dzVPr\nrv4sx/UqmFYuJWbtUTplTH9pDN4luLsJAdwy8eMsylw59FlHov1TM/X+cmf+\nXEQe4UZGKmvOmglrzkEUDaLfXikPxfPs4tYW9gLKWpau2FIGFIfSOWNk4RTL\nEK1Gvj23nJV5vMJs8I1HxxLIAg5x6NNiFUyfW+hSM/eUJW+CLCYkKApzaqbU\np5KRyKmsoMwxVwfBS5CSb/SO2hACxOo3slCXOoQy/kS/ob3dobuAlSX42Ypk\n34mwqvR/SPUmuJoytXHwIdCT8eJz5XRP69OuSq+HXuvwujF64WW+GlZ2Mm4q\nOUSsAOhu7f4G11KeiynUk0YQZKsSDOJ+rVNd40eS7MXlJO+dtoU2Gmy8HAl7\nkL6muGZ1YZnMyoLRU8Ff6dd+OdznFkehpoCW+JX2W8DUz2HG0NPBIG/7brrZ\nUeQ5IaZUvm8drMWjyg7OtaeefY3uX1iCl6BDNQeYbzbz7bJqU+ScGl47nXth\nYQSx1kfX3ulAVWCEfNH6nNrwsuBAT221FqTBR9cs67o3jt8H//NEU6Q36Qgj\n8t+8\r\n=pV81\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/paYV99lo7L48WdIXGc8lS/LEqDajsVNIey6mVfOkhQIgN6xK8/4+7BN+2j4kQtDKW3YqxPXbIxid0gVYvUSrPh8="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.1.0_1526285082131_0.3603880922773752"},"_hasShrinkwrap":false},"0.1.1":{"name":"redis-weighted-pool","version":"0.1.1","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^22.2.3","jest":"^22.4.3","tslint":"^5.10.0","typescript":"^2.8.3"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"ed28703b002748f127f9299a58a835f24251bb19","_id":"redis-weighted-pool@0.1.1","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-bXMYBe7ZqRe/fe5OO7Wb7WPezwaKvU05SvtMrs6cHbO5zQ9CHSm28ztWtrcIziRAGEOVJ/AewZdpM8OMvAFlCw==","shasum":"4cf35748a771f61c5f1b4c7c4b0bff0d7c54662c","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.1.1.tgz","fileCount":11,"unpackedSize":38671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+cWyCRA9TVsSAnZWagAA+FEP/jKlAtW2hVzijyPmvuDS\naori+fbvEMeU96Qy42Eju/YZjU8JsFzyWzxsxmqLCY676bJLIrQpjtuoFpEp\nyOHKbPymLa/jUJ4A4cMzeneXYsday0GVT0jL7e+Tf+w6zQhTnlPGGXhzd+bV\nFoY+i0qjxxvvNyfvxDI7dCEoVeyzkUww2Hg2+pFRoTUNWuu7tU0Ki0T57/2q\n/8rUYbOI9jHvmmNz006AgqAIs1SSAs5v60Fa84/USryXEE2ldFKzcIJgnFu9\nxsd6aTN3kh3tos5m06gRQ7n7Xm5kXo1EBs80uqluBEC2VrQNQ0GignP45zwx\nUBYR+v75apmofC49EfO70lBl/5yEq0fM5lzzV2gBc75ozHQzPAgMrIDD9mJn\nJjh0MK/b4gjNRGroYiYkn4vuh7AoARMFdAD7FZiFzcjsa8nrmPYg4MeOic8l\n3AXqnKdbfnsj18RH8zfSuNssbA6b4CCmcKkhLJv4a+DwluWb12u0VJ/uqE6V\nYfjlNd6NeQjGGFvz51YHPl9rrfJbEpJif59vXRmRpLthKWDEt1JQbxbpcoaS\nT+90AqoYkFeRD1JT/XaiR4l/cHe9WMQvCq58Hs8xGWl/PiDJKayPYYRQYPjn\nh3r7oLIoBaPMlRjoZCx44pZKrBrChGa3qULPRNLiHNPaAR+7EE6dUtg9SodO\n4Mjc\r\n=Hqa3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB43Wc5qIW5s4uufamrT+rmO5CyCSsxMngCWpPzD8ISjAiAU14XELtbjl2JhQHbdU3kMYYA7Eo467AjQb23hBXzAVQ=="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.1.1_1526318513561_0.8608426940504927"},"_hasShrinkwrap":false},"0.1.2":{"name":"redis-weighted-pool","version":"0.1.2","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^22.2.3","jest":"^22.4.3","tslint":"^5.10.0","typescript":"^2.8.3"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"c251a5888c2ed665cb6eb83ff0f978017b1a109b","_id":"redis-weighted-pool@0.1.2","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-vxXDMxkOoYcDlpD953/uIqciIIPhJgY840RMTAfkRTsanKTlCcMsQtVq1FyUtxAuKfF56M3luOCCRdP/bgc1hA==","shasum":"6457cf1916acdb7a5e6e0b4e8c558b5e2f6bb6fc","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.1.2.tgz","fileCount":10,"unpackedSize":37504,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+uWgCRA9TVsSAnZWagAA1vAP/3jgiedkziS+ng3TG8rk\nMibDRCsPgk1sFOuvnmRi6wDjs8zQ+iwvdIOE0WO866KLNSRDnsRyDRwzTBo+\nySigLJua3A2LpBk/f8exjaxgadOqYd0WpMc/re43HrVA/qgSu8ln1CMQ0C7f\npWXWF3pvu3nVRLwp2xa4rBL18bnfi0vE8oLdgbXHyddb2ZUSC7DbVv5Ow39M\nr0NmFfIl94xX/JRqz62tLgMxxbwO3PFWw+LxspHdgB/oaNGSef4MrKD3KnqC\nbjkAxlxQZ4WELoo0sTqN5ids11+jK0PKEAjSBR+ZXLcZsYLex5ybq4R9Dkb0\n6GQnAVC+hDuHmIuJZqxGFMGjwYjhH1IZhMYuMJxrqYbTXItXJdn1S/BcAnb4\nBD+y7p7e9U6PgA5h8Qn5kd7/0s0+lEG8sf+x3Fwx1N1WpSxDiVRnQbuKgPyZ\nk0K7Tg7iIh4MehtLh2Sro2oheKcgfdu7RuoRYzS+EAmJM3/vf7yOsupUBmVS\nah6hLWvbKsLNGhPHC3Y80tSwC1VPXZzxcfwWNAd0RXsqfNSoG2A1MWV0oEt2\nc0e4tY1DZqXEU41w4PbeSLTuuCzS42hEjaY6hHQzLlWLtUQ45yKsxoThp439\nRdP/tWuZzi5kINe2OEAO7h/aMu/4QIqY5Ytbqq6JeOKhmR6o26nzQSg6T4NP\nrP+4\r\n=DmeD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICEOn4MjUuqkRYA3Ck48uXtEiK2NSVX4vQ0bS9GtwgZnAiEAyHhQiU/tVWTQNhT8mThKDh33HQNIY0B5Oy7Dd1Ck7Qs="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.1.2_1526392224269_0.7431250406627037"},"_hasShrinkwrap":false},"0.1.4":{"name":"redis-weighted-pool","version":"0.1.4","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^22.2.3","jest":"^22.4.3","tslint":"^5.10.0","typescript":"^2.8.3"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"9af53c95fe3cb4e94d7e4ba8a16515144ca6dd59","_id":"redis-weighted-pool@0.1.4","_npmVersion":"6.0.1","_nodeVersion":"9.11.1","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-RDF70xkn3RNuI/CAmg0vrZeT0oiCgaXJ+3xYH2TGG8WXknvB7NlV0E1nxnkC/+vdTW2Z+cWl43dQwR5eMDKYsw==","shasum":"e9abf2425ca18c0dc33cb43f125b6c07035f3fd3","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.1.4.tgz","fileCount":11,"unpackedSize":38978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbBx0CCRA9TVsSAnZWagAASkAQAKTnA/W//uj3xE289MTS\ncpV7wAD4wH5OS6O94EAik/qyo9ugrrZ9/DHNpFd4QE4nnFyjk6ETJanAPPoZ\n5XAqJnDGK+PgXPeTEYWEkWnTK7rOVNYGcflQnnbcUOPE+z9aqtZ+j5xUanGf\nsQtV15OVPkDigkZB3b/Hp0Z6RhWQ9SMSuQy/EgI+HiCpG92YcpF9Crnq52Gc\nVudDhuqlCWXqqzViOcqzIX9tXy0+8pTpB2hEwyJUg+ApeUTsvv4ntC8qY8r9\nqRrgyL7lUGEjzZoEORb041+8msJn31F5kp+Vok8I+xmnVq6Hh/SYgrc+gArL\nl01dw3JSuNt2dBgnWGplRNFtTCy2hFUDJvGYDm59kCW13cD3PHwndcOfq/7N\nawq2eBebmNEkRNVn2C0A9bG1+xLvPaJaND2DEmaiuj/XRUzS/MzdZugQUFgF\nAtWlgE/0UC24joMckG8yqN5hfuiHn70Jl1A/ndW3Wq9H/5h87KJrVq8y26W1\nak6bYv880druxuGysYmdhGv2aYCzg6DjfAa86hotDE/uyizYsvWSZikkyEuK\nlLPCzIZD5s+nDQqRKWivSeRFr2rvVFMlFMGYVzZ0ja1u+bEGp9yRu1UmOzJQ\nYOlF+3vqFWR/iW8tMkAyI0IuU/9H7NRMSDA3WPU0hpCJgoJu+N9Ge7AzIo1y\nQBPM\r\n=DNdn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwY2HekdYD3INofrv01ZCjq73QxokRx8c22gICn6/LuQIgSpGWn+KWjYFg6fE3+m/MAFOVJoADsKYEwQsLo4Hplgw="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.1.4_1527192834183_0.169120773893912"},"_hasShrinkwrap":false},"0.2.0":{"name":"redis-weighted-pool","version":"0.2.0","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^23.3.10","jest":"^23.6.0","tslint":"^5.11.0","typescript":"^3.2.1"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"a337a737bc4d62b3673e296884b29613a5628a46","_id":"redis-weighted-pool@0.2.0","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-OnzQaRuBLUZ1BsigDIcPbzIuGageCAzhwlkFWAHQsmc1r6qzrY9pVey/AAqw3tsDWLWXb7LiGfLHTERTv4mboQ==","shasum":"b3f5a6219fe71971bd0343c9689591a95543d837","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.2.0.tgz","fileCount":11,"unpackedSize":38979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAFr1CRA9TVsSAnZWagAA1+wP/3DAH7mxSg3jmG2MiKxw\n7ii7CHSRAqD97UzGGpM25wnC7fQUY/xzljPVQYzcukC4pRdj60EMC+2ow8gO\n8WNrCC6UxsXwEIMjLu8OJ4PYRarxrOKzI11TxCjDQ7wHVzePsVEd6f88w2Oc\n2sOEvXOLBd2FXI6wCAlNluvq96QLhitq/8kndy8XThfm0d/wp254IuWlUzwI\nzdqz2/PPnhvfSDQoRA73uTP+TkiwPlWbfJyO3Si8a2lxlAs5dQHl7R1G5Qbp\nI+AyD1k2W0wGmBJBBfF8RRrUMUeW4pcl/i8uUrJ0Iujr8rcQVvKU7IAc0HeW\nG+04AX00gMZvpIpsqbLNxi8dxiZ1doGnVCKNn3pxpNxJNkACex/NBBRYCn0S\n0oyNaHQfwfaQX9ZxLpK9clWpXySHsvhyxYDDr8hoUp1QqiR9PH2q53ClyIG+\nbVSFAHh/SJw0C9txqkL5xK7ZDmuMzmz4o5yMtzqULXGiwGF6nOHIbsg+tbLk\nlsfPbmKFabLe+TSe3gTW8btVTpJ9xx2apIHFDII92YPZIIDJ6+l3M48+g+KH\nrWW65FjdNDDaSmcI2o5vlOZn6cOYGHd5xpcdeS5TOF/f1f3lPdhDyU+vbZqm\n83ykTFRRdGiVwSyUir7nJJef58XGN0YTWzaGy3Vaq9nFB9W06HDtxt4LH0ON\np3jq\r\n=VyjV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCV478ZKE8eS1RLxblaokeAdyd2STESdINdJu+U7QfDLwIgM0j8UZb3vlVbjQNek1zLAZUO+VLqEqoW6RiT5ZNqI1I="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.2.0_1543527156787_0.6338608059629753"},"_hasShrinkwrap":false},"0.2.1":{"name":"redis-weighted-pool","version":"0.2.1","description":"Simple weighted round robin implementation using Redis list and sorted set","main":"index.js","scripts":{"build":"tsc","lint":"tslint -c tslint.json 'src/**/*.ts'","test":"jest","coverage":"jest --coverage"},"dependencies":{"@types/redis":"^2.8.6","redis":"^2.8.0"},"devDependencies":{"@types/jest":"^23.3.10","jest":"^23.6.0","tslint":"^5.11.0","typescript":"^3.2.1"},"jest":{"moduleFileExtensions":["ts","tsx","js"],"transform":{"^.+\\.(ts|tsx)$":"<rootDir>/preprocessor.js"},"testMatch":["**/__tests__/*.+(ts|tsx|js)"]},"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"author":{"name":"Mike Sparr"},"license":"MIT","bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","gitHead":"1a5fe756ef031da61f1d8179c4c0eb5ee44f9971","_id":"redis-weighted-pool@0.2.1","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"mikesparr","email":"mike@goomzee.com"},"dist":{"integrity":"sha512-hkPLor1JJmOgZIOFCZBWEUn5pZCzp2ETpelpi5S4vsTOZpBScvZAUfxRtIuKKUV65ccU+qoeEd7pRkKhBS2bLA==","shasum":"db06f57b1cd86fadd2828c3a83189e1b71d1b00b","tarball":"https://registry.npmjs.org/redis-weighted-pool/-/redis-weighted-pool-0.2.1.tgz","fileCount":11,"unpackedSize":38979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAGDxCRA9TVsSAnZWagAAQf4QAIyy806FsL7xxWLBKrax\nkEvntIKtwQmOuJYtRb8QZtTK56gXvwtk1DaRDadVpNmiht1RwzKVsvhfBxqx\nl8OphMSOWbB9ASUTh4Wwdf0sSkDFwp9c3aixqrisdP/rGdWz6M1PZY0tIZrO\nElAX0M2u0QIVGGXFWmsU9dYgVP+iWmAzEXpQ3ny/sWgmZiC/9muB9pxOLfc4\n5RfJcFFQLQ8C10n1qygpw9sRWsF3aclxq5B2TaN/m7swWFjsOPtgWkzwDy+9\nr5CmtjoWYkYFUVWx8wf8qMZNe0An5Og7EGUdnPyVWaCfZy/6UG0y5AZJ/sfZ\n88aZaeKDeJsMs/mHjYGx0O30lN/4yNSOygLNGXaFWlQEdddDXqDI2Yn/zO0A\nVJR87WSMJIqswwfFSV5sptCaZKQxOPwmoXfmHrlKmmEEc6PWwgooTCQmfc5G\n+aI96fNW0msZYy1Uh788p34cGukJjWQ9qaw8Y3MWkkW7UHYITGjGmF+HsMK5\nBtvkk4cSqu27hcB16b/UeRB2fN6Y+lxhySXWiBA0TrJYPiLcZhkEXUXLPnQD\n2aZalWGkif/NUkXfICyMgExerGbEDOjm0vqQuxDfpc/poY1dHO3nytNvZEkn\nUERMMPvr4qPp6fQMngzn5PFCR68ZVVxOQJ1ElyDs/0wD4lsWeMkF5faot2nk\ndHtD\r\n=1svQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFBpplGIW0TbNJc0/NaMz2DsGC+w76JK0fUSDTXd3MnUAiEAu5y5UfyJaK5W6Z8dRiVRNh5E52xT78V2ufh1ZAf54DE="}]},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-weighted-pool_0.2.1_1543528689256_0.22864285497685644"},"_hasShrinkwrap":false}},"time":{"created":"2018-05-14T08:04:42.129Z","0.1.0":"2018-05-14T08:04:42.276Z","modified":"2022-05-15T14:23:14.400Z","0.1.1":"2018-05-14T17:21:53.723Z","0.1.2":"2018-05-15T13:50:24.379Z","0.1.4":"2018-05-24T20:13:54.329Z","0.2.0":"2018-11-29T21:32:36.888Z","0.2.1":"2018-11-29T21:58:09.380Z"},"maintainers":[{"name":"mikesparr","email":"mike@goomzee.com"}],"description":"Simple weighted round robin implementation using Redis list and sorted set","homepage":"https://github.com/mikesparr/redis-weighted-pool#readme","keywords":["redis","load","balancing","weighted","round","robin","routing","object pool"],"repository":{"type":"git","url":"git+https://github.com/mikesparr/redis-weighted-pool.git"},"author":{"name":"Mike Sparr"},"bugs":{"url":"https://github.com/mikesparr/redis-weighted-pool/issues"},"license":"MIT","readme":"# Redis Weighted Pool\nThis is a simple Promise based multi-channel weighted round robin pool implementation that leverages Redis sorted set and list.\n\n# Requirements\nYou will need Redis server running.\n\n# Installation\n```bash\nnpm install redis-weighted-pool\nyarn add redis-weighted-pool\n```\n\n# Test\nThe test script in `package.json` preprocesses the `.ts` file and then executes.\n\n`npm test`\n\n# Usage\nThe source was written in Typescript, yet it compiles to Javascript (`npm run build`). You can use in ES5 or later supported environments. The following code snippets are implemented in the `__tests__` folder.\n\n## Quick start (Node)\n```javascript\nconst pool = require('redis-weighted-pool');\n\nconst config = pool.RedisConfig(\"localhost\", 6379, null, null);\n\nconst myPool = new pool.RedisWeightedPool(config);\n\nmyPool.length(\"myChannel\")\n  .then(result => {\n    console.log({result});\n  })\n  .catch(error => {\n    console.error({error});\n  });\n```\n\n## Optional with existing client\nIf you already have a program with a `RedisClient` you can pass the client as an optional second parameter.\n```javascript\nconst myPool = new pool.RedisWeightedPool(null, client);\n\nmyPool.length(\"myChannel\")\n  .then(result => {\n    console.log({result});\n  })\n  .catch(error => {\n    console.error({error});\n  });\n```\n\n## Typescript\n### Initialization\n```typescript\nimport {RedisConfig, IWeightedPool, RedisWeightedPool} from 'redis-weighted-pool';\n\nlet config: RedisConfig = new RedisConfig(\n    \"localhost\",\n    6379,\n    null,\n    null\n);\n\nlet myPool : IWeightedPool<string> = new RedisWeightedPool(config);\n```\n\n### Add peers\n```typescript\nPromise.all([\n    myPool.addPeer(\"channelId\", \"peerId1\", weight1),\n    myPool.addPeer(\"channelId\", \"peerId2\", weight2),\n    myPool.addPeer(\"channelId\", \"peerId3\", weight3)\n])\n    .then(values => {\n        done();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n### Get next peer (weighted round robin)\n```typescript\nmyPool.getNextPeer(\"channelId\")\n    .then(result => {\n        // expect one of peer Ids to be returned\n        expect(result).toBeDefined();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n### Remove peer from channel\n```typescript\nmyPool.removePeer(\"channelId\", \"peerId1\")\n    .then(result => {\n        // expect peer count to be decreased\n        expect(result).toBeDefined();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n### Reset pool for channel\n```typescript\nmyPool.reset(\"channelId\")\n    .then(result => {\n        done();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n### Check if empty\n```typescript\nmyPool.isEmpty(\"channelId\")\n    .then(result => {\n        expect(result).toBeFalsy();\n        done();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n### Get pool length\n```typescript\nmyPool.length(\"channelId\")\n    .then(result => {\n        expect(result).toEqual(3);\n        done();\n    })\n    .catch(error => {\n        done.fail(error);\n    });\n```\n\n# Contributing\nI haven't thought that far ahead yet. I needed this for my project and wanted to give back. ;-)\n\n# License\nMIT (if you enhance it, fork and PR so the community benefits)\n","readmeFilename":"README.md"}