Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

Projects in Awesome Lists by ori88c

A curated list of projects in awesome lists by ori88c .

https://github.com/ori88c/zero-backpressure-semaphore-typescript

Promise Semaphore for Node.js projects, inspired by the RAII idiom. Offering backpressure control for enhanced efficiency, utilizing a communicative API that signals availability. Additionally, it features a modern API and incorporates mechanisms for graceful termination and error handling.

async backpressure concurrency executor javascript job job-scheduler js limiter lock mutex nodejs npm-package rate-limiter runner semaphore task task-scheduler ts typescript

Last synced: 27 Oct 2024

https://github.com/ori88c/non-overlapping-periodic-job-scheduler

Periodic job scheduler for Node.js projects, ensuring non-overlapping executions and deterministic termination. Features a dynamically chosen interval between executions, determined by a user-injected calculator function, which can take into account the duration of the last execution and any error it may have thrown.

async disjoint-intervals executor job-runner job-scheduler nodejs non-overlapping npm-package periodic-job periodic-task recurring-job recurring-task scheduler scheduling setinterval task task-runner task-scheduler ts typescript

Last synced: 11 Nov 2024

https://github.com/ori88c/non-replacement-weighted-random-item-sampler

A weighted random item sampler (selector), where the probability of selecting an item is proportional to its weight, and every item is sampled exactly once (without repetition or replacement). The sampling method utilizes a binary-search optimization, making it suitable for performance-demanding applications where the set of items is large.

binary-search js logn no-repetitions no-replacement nodejs non-replacement non-replacement-weighted-sampling sample-once typescript weighted-choice weighted-random weighted-random-choice weighted-random-pick weighted-random-sampling weighted-random-select weighted-sampler weighted-samples weighted-sampling weighted-select

Last synced: 29 Oct 2024