X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=README.md;h=21efd7031a4c60d49f2e1c734688c8dc2ebdac12;hb=caae835ba9524f892f420912a23942e3b99bbbee;hp=e82595aada8a6a21342191365bd1a817130cd9dd;hpb=7e04d52e68252cd28ae94755d6ee98f521523c1e;p=poolifier.git diff --git a/README.md b/README.md index e82595aa..21efd703 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,34 @@ -# 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) -[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=alert_status)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) - [![SonarCloud Coverage](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=coverage)](https://sonarcloud.io/component_measures/metric/coverage/list?id=pioardi_poolifier) -[![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) - -
- +
+
+

Node Thread Pool :arrow_double_up: :on:

+ +

+ + Weekly Downloads + + Actions Status + + Quality Gate Status + + Code coverage + + Javascript Standard Style Guide + + Gitter chat + + Dependabot + + PR Welcome + + No dependencies + +

+ + + + ## Why Poolifier? 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](https://nodejs.org/api/worker_threads.html#worker_threads_worker_threads). @@ -21,25 +36,25 @@ With poolifier you can improve your **performance** and resolve problems related Moreover you can execute your CPU tasks using an API designed to improve the **developer experience**. - Performance :racehorse: -- Security :bank: :cop: [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=security_rating)](https://sonarcloud.io/dashboard?id=pioardi_poolifier)[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) - -- No runtime dependencies :white_check_mark: (until now we don't have any exception to that) +- Security :bank: :cop: [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=security_rating)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) - Easy to use :couple: +- Easy switch from a pool to another, easy to tune :heavy_check_mark: +- Dynamic pool size :heavy_check_mark: +- No runtime dependencies :heavy_check_mark: +- Proper async integration with node async hooks :heavy_check_mark: +- Support for worker threads and cluster node modules :heavy_check_mark: +- Support sync and async tasks :heavy_check_mark: +- General guidance on pools to use :heavy_check_mark: +- Widely tested :heavy_check_mark: +- Error handling out of the box :heavy_check_mark: +- Active community :heavy_check_mark: - Code quality :octocat: [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=bugs)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=code_smells)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=duplicated_lines_density)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) [![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=pioardi_poolifier&metric=sqale_index)](https://sonarcloud.io/dashboard?id=pioardi_poolifier) -- Easy switch from a pool to another, easy to tune -- Dynamic pool size -- Proper async integration with node async hooks -- Support for worker threads and cluster node modules -- Active community -- Support sync and async tasks -- General guidance on pools to use -- Widely tested -- Error handling out of the box + ## Contents