• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

jbielick / faktory_worker_node
94%
master: 97%

Build:
Build:
LAST BUILD BRANCH: dependabot/npm_and_yarn/y18n-4.0.3
DEFAULT BRANCH: master
Repo Added 28 Oct 2017 07:00PM UTC
Files 9
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH pool
branch: pool
CHANGE BRANCH
x
Reset
  • pool
  • api
  • beat-signals
  • concurency-refactor
  • connection
  • dependabot/npm_and_yarn/commander-5.1.0
  • dependabot/npm_and_yarn/commander-6.0.0
  • dependabot/npm_and_yarn/commander-6.1.0
  • dependabot/npm_and_yarn/commander-6.2.0
  • dependabot/npm_and_yarn/coveralls-3.1.0
  • dependabot/npm_and_yarn/eslint-6.8.0
  • dependabot/npm_and_yarn/eslint-plugin-import-2.21.1
  • dependabot/npm_and_yarn/eslint-plugin-import-2.21.2
  • dependabot/npm_and_yarn/eslint-plugin-import-2.22.0
  • dependabot/npm_and_yarn/get-port-5.1.1
  • dependabot/npm_and_yarn/jsdoc-3.6.4
  • dependabot/npm_and_yarn/jsdoc-3.6.5
  • dependabot/npm_and_yarn/jsdoc-3.6.6
  • dependabot/npm_and_yarn/jsdoc-to-markdown-tw-6.0.1
  • dependabot/npm_and_yarn/nyc-15.1.0
  • dependabot/npm_and_yarn/sinon-9.0.2
  • dependabot/npm_and_yarn/sinon-9.0.3
  • dependabot/npm_and_yarn/sinon-9.1.0
  • dependabot/npm_and_yarn/sinon-9.2.0
  • dependabot/npm_and_yarn/sinon-9.2.1
  • dependabot/npm_and_yarn/typescript-4.0.2
  • dependabot/npm_and_yarn/typescript-4.0.3
  • dependabot/npm_and_yarn/typescript-4.0.5
  • dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.0.0
  • dependabot/npm_and_yarn/uuid-8.3.0
  • dependabot/npm_and_yarn/uuid-8.3.1
  • job-thunk-ctx
  • main
  • master
  • middleware2
  • ts
  • v0.10.0
  • v0.2.3
  • v0.3.0
  • v0.4.0
  • v0.4.1
  • v0.5.0
  • v0.6.0
  • v0.6.1
  • v0.6.2
  • v0.6.3
  • v0.8.0
  • v0.9.0
  • v0.9.1
  • v0.9.2
  • v1.0.0
  • v1.0.1
  • v2.0.0
  • v2.0.0-beta1
  • v2.1.0
  • v2.1.1
  • v2.2.0
  • v2.2.1
  • v2.2.2
  • v2.2.3
  • v3.1.0
  • v3.2.0
  • v3.2.1
  • v3.3.0
  • v3.3.1
  • v3.3.2
  • v3.3.3
  • v3.3.4
  • v3.3.5
  • v3.3.6
  • v3.3.7
  • v3.3.8
  • v4.0.0
  • v4.0.1
  • v5.0.0

pending completion
28

push

travis-ci

jbielick
create manager->processor pool

major point of this is to create a pool of processors and a connection
pool. The connection pool holds concurrency + 2 connections to the
faktory server and each processor has it's own work loop and fetch
cycle. The connection pool is managed by the manager and all lifecycle
hooks are syndicated to the pool of workers. A processor is an object
that polls for jobs--checking out a connection for each command it
executes. It's working loop is an infinite for loop with awaiting on the
fetch and job execution.

                  ,_______________,
                  |    faktory    |
                  -----------------
                          |
                  ,________________
                 /        |        \
     ,___________,  ,___________,  ,___________,
     | processor |  | processor |  | processor |
     -------------  -------------  -------------
                  \       |       /
                   ---------------
                          |
                   ,-------------,
                   |   manager   |
                   ---------------

Where each processor has its own connection to the faktory server and
processor pools are managed by a manager. A manager has n concurrency
and that's the number of processors and connections that will be started
to serve that pool. All of this lives within one node process.

Benchmarks:

pool:

› bench/push

pushed: 30000 duration: 1.35946858s jobs/s: 22067

› bench/push

pushed: 30000 duration: 1.430357713s jobs/s: 20974

› bench/push

pushed: 30000 duration: 1.3823066609999999s jobs/s: 21703

› bench/work

Jobs processed: 30000
Concurrency: 20

Duration: 6.7563684649999995s
Jobs/s: 4440

› bench/work

Jobs processed: 30000
Concurrency: 20

Duration: 6.653886883s
Jobs/s: 4509

› bench/work

Jobs processed: 30000
Concurrency: 20

Duration: 6.515825339s
Jobs/s: 4604

===============================================================

pool without await this.execute and s... (continued)

22 of 24 branches covered (91.67%)

Branch coverage included in aggregate %.

95 of 101 relevant lines covered (94.06%)

15.83 hits per line

Relevant lines Covered
Build:
Build:
101 RELEVANT LINES 95 COVERED LINES
15.83 HITS PER LINE
Source Files on pool
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28 pool create manager->processor pool major point of this is to create a pool of processors and a connection pool. The connection pool holds concurrency + 2 connections to the faktory server and each processor has it's own work loop and fetch cycle. The... push 12 Nov 2017 02:52AM UTC jbielick travis-ci pending completion  
See All Builds (326)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc