X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=README.MD;h=14343452722e24bda3b8e14c7564e926da905c94;hb=818f21802b552970dc312426a5c2c8411095a316;hp=7dc0a1ed8688bcfc91956ad3face9b3b87397740;hpb=2a49ec4b2de872c68373c24d74e057a6cf4b48c4;p=poolifier.git diff --git a/README.MD b/README.MD index 7dc0a1ed..14343452 100644 --- a/README.MD +++ b/README.MD @@ -1,15 +1,16 @@ # Node Thread Pool :arrow_double_up: :on: [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com) [![Dependabot](https://badgen.net/dependabot/dependabot/dependabot-core/?icon=dependabot)](https://badgen.net/dependabot/dependabot/dependabot-core/?icon=dependabot) +[![npm w](https://img.shields.io/npm/dw/poolifier)](https://www.npmjs.com/package/poolifier) [![Actions Status](https://github.com/pioardi/node-pool/workflows/NodeCI/badge.svg)](https://github.com/pioardi/node-pool/actions) -[![Coverage Status](https://coveralls.io/repos/github/pioardi/node-thread-pool/badge.svg?branch=master)](https://coveralls.io/github/pioardi/node-thread-pool?branch=master) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) +[![Coverage Status](https://coveralls.io/repos/github/pioardi/poolifier/badge.svg?branch=master)](https://coveralls.io/github/pioardi/poolifier?branch=master)[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) [![NODEP](https://img.shields.io/static/v1?label=dependencies&message=no%20dependencies&color=brightgreen )](https://img.shields.io/static/v1?label=dependencies&message=no%20dependencies&color=brightgreen ) +[![Gitter](https://badges.gitter.im/poolifier/community.svg)](https://gitter.im/poolifier/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

Why Poolifier?

-Poolifier is used to perform heavy CPU bound tasks on nodejs servers, it implements thread pools ( yes, more thread pool implemenetations, so you can choose which one fit better for you ) using worker-threads .
+Poolifier is used to perform heavy CPU bound tasks on nodejs servers, it implements thread pools ( yes, more thread pool implementations, so you can choose which one fit better for you ) using worker-threads .
With poolifier you can improve your performance and resolve problems related to the event loop.
Moreover you can execute your CPU tasks using an API designed to improve the developer experience. @@ -27,6 +28,8 @@ Moreover you can execute your CPU tasks using an API designed to improve the · Contribute · + Team + · Compatibility · License @@ -56,7 +59,7 @@ function yourFunction (data) { return { ok: 1 } } -module.exports = new ThreadWorker(yourFunction, { maxInactiveTime: 60000 }) +module.exports = new ThreadWorker(yourFunction, { maxInactiveTime: 60000, async: false }) ``` Instantiate your pool based on your needed : @@ -85,11 +88,12 @@ pool.execute({}).then(res => { ``` - See examples folder for more details ( in particular if you want to use a pool for [multiple functions](./examples/multiFunctionExample.js) ). + See examples folder for more details( in particular if you want to use a pool for [multiple functions](./examples/multiFunctionExample.js) ). +Now type script is also supported, find how to use it into the example folder

Node versions

-You can use node versions 12.x , 13.x
+You can use node versions 12.x , 13.x, 14.x

API

@@ -121,6 +125,7 @@ This method will call the terminate method on each worker. `fn` (mandatory) The function that you want to execute on the worker thread
`opts` (optional) An object with these properties : - `maxInactiveTime` - Max time to wait tasks to work on ( in ms) , after this period the new worker threads will die. +- `async` - true/false , true if your function contains async pieces else false

Choose your pool

Performance is one of the main target of these thread pool implementations, we want to have a strong focus on this.
@@ -137,6 +142,18 @@ See guidelines [CONTRIBUTING](CONTRIBUTING.md)
Choose your task here 2.0.0, propose an idea, a fix, an improvement.
+

Team

+ + + + +**Creator/Owner:** +* [__Alessandro Pio Ardizio__](https://github.com/pioardi) + +***Contributors*** +* [__Shinigami92__](https://github.com/Shinigami92) +* [__Jérôme Benoit__](https://github.com/jerome-benoit) +

License

[MIT](./LICENSE)