Set Timeouts and Intervals in Web Workers So They Continue Working When the Page is Hidden.
No description provided.
Utilities for executing code in Web Workers
Type-safe, structured communication between worker threads and parent processes via TypeScript meta-programming.
Seamless REST/GraphQL API mocking library for browser and Node.js.
A replacement for setInterval() and setTimeout() which works in unfocused windows.
Consistent Web Workers in browser and Node.
MSR JavaScript Cryptography Library
Offload tasks to a pool of workers on node.js and in the browser
Utilities for running tasks on worker threads
The worker which is used by the worker-timers package.
A fast, efficient Node.js Worker Thread Pool implementation
Automatically move a module into a Web Worker (Webpack loader)
Communicate with a Web Worker using Promises, allowing transferList
The broker which is used by the worker-timers package.
A little factory function to create a JSON-RPC based Web Worker implementation.
Temporal.io SDK Worker sub-package
worker loader module for webpack
Distribute processing tasks to child processes with an über-simple API and baked-in durability & custom concurrency options.
Client Server RPC worker for CSpell.
A simple RPC layer for communicating with web workers and over other transports
A Node.js communication port that can pass messages synchronously between workers
Consistent Web Workers in browser and Node.
A minimal and tiny Node.js Worker Thread Pool implementation, a fork of piscina, but with fewer features
Sometimes we need to perform some workers in time interval. For example, we want to run all jobs at night (from 2 am to 6 am).
Middleware for timing out current unicorn worker if request takes to long time.
Ensures that for a given queue, only one worker is working on a job at any given time. Example: require 'resque/plugins/lonely_job' class StrictlySerialJob extend Resque::Plugins::LonelyJob @queue = :serial_work def self.perform # only one at a time in this block, no parallelism allowed for this # particular queue end end
Add 'perform_spread' method to workers to allow for scheduling jobs over an interval of time.
Ensures that for a given queue, only one worker is working on a job at any given time. Example: require 'resque/plugins/lonely_job' class StrictlySerialJob extend Resque::Plugins::LonelyJob @queue = :serial_work def self.perform # only one at a time in this block, no parallelism allowed for this # particular queue end end
HireFire.io - The Heroku Dyno Manager - Autoscaling your web and worker dynos saving you time and money!
minitest-distributed is a plugin for minitest for executing tests on a distributed set of unreliable workers. When a test suite grows large enough, it inevitable gets too slow to run on a single machine to give timely feedback to developers. This plugins combats this issue by distributing the full test suite to a set of workers. Every worker is a consuming from a single queue, so the tests get evenly distributed and all workers will finish around the same time. Redis is used as coordinator, but when using this plugin without having access to Redis, it will use an in-memory coordinator. Using multiple (virtual) machines for a test run is an (additional) source of flakiness. To combat flakiness, minitest-distributed implements resiliency patterns, like re-running a test on a different worker on failure, and a circuit breaker for misbehaving workers.
resque plugin for automatically scaling workers based on the amount of time it takes a job to go through the queue and/or the length of the queue
Sidekiq extension that adds the ability to debounce job execution. Worker will postpone its execution after `wait time` have elapsed since the last time it was invoked. Useful for implementing behavior that should only happen after the input has stopped arriving.
Em-resque is a version of Resque, which offers non-blocking and non-forking workers. The idea is to have fast as possible workers for tasks with lots of IO like pinging third party servers or hitting the database. The async worker is using fibers through Synchrony library to reduce the amount of callback functions. There's one fiber for worker and if one of the workers is blocking, it will block all the workers at the same time. The idea to use this version and not the regular Resque is to reduce the amount of SQL connections for high-load services. Using one process for many workers gives a better control to the amount of SQL connections. For using Resque please refer the original project. https://github.com/defunkt/resque/ The library adds two rake tasks over Resque: * resque:work_async for working inside the EventMachine
Telework is a Resque plugin aimed at controlling Resque workers from the web UI. It makes it easy to manage workers on a complex systems that may include several hosts, different queue(s) and an evolving source code that is deployed several times a day. Beyond starting and stopping workers on remote hosts, the plugin makes it easy to switch between code revisions, gives a partial view of each worker's log (stdout and stderr) and maintains a status of each workers.
HireFire automatically "hires" and "fires" (aka "scales") Delayed Job and Resque workers on Heroku. When there are no queue jobs, HireFire will fire (shut down) all workers. If there are queued jobs, then it'll hire (spin up) workers. The amount of workers that get hired depends on the amount of queued jobs (the ratio can be configured by you). HireFire is great for both high, mid and low traffic applications. It can save you a lot of money by only hiring workers when there are pending jobs, and then firing them again once all the jobs have been processed. It's also capable to dramatically reducing processing time by automatically hiring more workers when the queue size increases.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.