Advanced scheduling framework
Project description
Red Engine
Powering your Python Apps
What is it?
Red Engine is a modern scheduling framework for Python applications. It is simple, clean and extensive. It is the engine that sets your Python programs alive.
The library is minimal on the surface but extensive and customizable underneath. The syntax very clean:
from redengine import RedEngine
app = RedEngine()
@app.task('daily')
def do_daily():
...
if __name__ == '__main__':
app.run()
Compared to alternatives, Red Engine has perhaps the most elegant syntax and is the most productive. It offers more features than Crontab or APScheduler but is much easier to work with than Airflow. It does not make assumptions of your project.
Read more from the documentations: Red Engine, documentations
Installation
Install Red Engine from PyPI:
pip install redengine
More Examples?
Scheduling:
@app.task("every 10 seconds")
def do_continuously():
...
@app.task("daily after 07:00")
def do_daily_after_seven():
...
@app.task("hourly & time of day between 22:00 and 06:00")
def do_hourly_at_night():
...
@app.task("(weekly on Monday | weekly on Saturday) & time of day after 10:00")
def do_twice_a_week_after_ten():
...
Pipelining tasks:
from redengine.args import Return
@app.task("daily after 07:00")
def do_first():
...
return 'Hello World'
@app.task("after task 'do_first'")
def do_second(arg=Return('do_first')):
# arg contains the value of the task do_first's return
...
return 'Hello Python'
Parallelizing tasks:
@app.task("daily", execution="main")
def do_unparallel():
...
@app.task("daily", execution="thread")
def do_on_separate_thread():
...
@app.task("daily", execution="process")
def do_on_separate_process():
...
Author
- Mikael Koli - Miksus - koli.mikael@gmail.com
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file redengine-2.0.1.tar.gz
.
File metadata
- Download URL: redengine-2.0.1.tar.gz
- Upload date:
- Size: 128.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18c1ab6a3db54ad26a1fa6004ad76cd9a4c127437301b7c75faf07d6726a1195 |
|
MD5 | 4352f26b50dbdd92c3f709a39b85893f |
|
BLAKE2b-256 | bad9402c15fbfaecf1792d91c71ae05c52c8c8228961d2debcb4b0c9bede4715 |
File details
Details for the file redengine-2.0.1-py3-none-any.whl
.
File metadata
- Download URL: redengine-2.0.1-py3-none-any.whl
- Upload date:
- Size: 161.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 116fcd18f85ec8fe63f1430ad291775db70762e8710083602539cd5a0ddeb704 |
|
MD5 | 22010e6f5cd90bc50ba9d413f9230dcb |
|
BLAKE2b-256 | 4f57fdfaec4a068761997ec66ee6cc84c60b5bdb9f1e2edf4d6e63bc61f728ec |