Skip to main content

Naive timed execution of custom handlers in multiple threads

Project description

Naive Python Runner

What does it do?

naivepyrunner is library to schedule a small amount of timed tasks that may need to perform repeatedly. It does not claim to always choose the right execution order of those tasks to minimize the overall delay if it is running under limited ressources, but it does try to do so.

How does it work?

Why is it naive?

The runner assumes that the list with yet to execute tasks does not change while calculating the optimal position for the task. This may lead to not optimal positioning

Installation

Install it via pip:

pip install naivepyrunner -U

Clone this repo and build it yourself:

  pip install wheel -U

  # clone via https
  git clone https://github.com/henningjanssen/naivepyrunner.git
  # or via ssh
  git clone git@github.com:henningjanssen/naivepyrunner.git

  cd naivepyrunner

  # install via pip
  pip install .
  # or register as developed package
  python setup.py develop
  # or build the package and place it with your packages
  make

Docker

Build it

# build it yourself
docker build -t naivepyrunner .
docker run -v$PWD:/app naivepyrunner python myapp.py
# or use the prebuilt container
docker run -v$PWD:/app henningj/naivepyrunner python myapp.py

Extend your Dockerfile:

FROM henningj/naivepyrunner:latest
[...]
python myapp.py

Usage

License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
naivepyrunner-0.2.0-py3-none-any.whl (5.7 kB) Copy SHA256 hash SHA256 Wheel py3
naivepyrunner-0.2.0.tar.gz (4.1 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page