X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=README.MD;h=d9df3f2a948e683a7e5d09d830689f3578ad1040;hb=eb8a1d33b6480bbde62e3524a4c0a2316e2c3389;hp=636c3d568cc71cc9a7983243f900c65f09fe4f21;hpb=fcc48988df7e2610e531d1c0b8dbb471c7ecf3c8;p=poolifier.git diff --git a/README.MD b/README.MD index 636c3d56..d9df3f2a 100644 --- a/README.MD +++ b/README.MD @@ -1,15 +1,15 @@ # 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 )

Why Poolifier?

-Poolifier is used to perform heavy CPU bound tasks on nodejs servers, it implements a thread pool 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. @@ -56,7 +56,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 +85,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 +122,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.
@@ -133,7 +135,8 @@ But in general , always profile your application

Contribute

-See guidelines [CONTRIBUTING](CONTRIBUTING.md) +See guidelines [CONTRIBUTING](CONTRIBUTING.md)
+Choose your task here 2.0.0, propose an idea, a fix, an improvement.

License