为Django提供的简单、通用的cron-like作业运行服务
项目描述
一个Django的cron-like语法节拍服务器
Bronski允许您使用Django模型配置周期性函数调用。
它非常适合作为任务“节拍”服务器,类似于celery-beat。
安装
$ pip install bronski
设置
将‘bronski’添加到您的INSTALLED_APPS
这只是为了启用管理命令。
在您的应用中创建一个继承自bronski.models.CrontabBase的模型
创建并应用迁移
$ manage.py makemigrations $ manage.py migrate
在设置中指定您的模型
CRONTAB_MODEL = "myapp.MyCronModel"
启动您的节拍服务器
$ ./manage.py bronski
每分钟,bronski服务将扫描模型,查找在过去59秒内未运行过的已启用作业。然后它会检查每个作业,看其crontab定义是否与下一分钟匹配。
对于匹配的作业记录,将调用其run方法。默认的run方法将
通过调用self.get_function()获取指定的函数
通过调用self.get_kwargs()解析要使用的kwargs
使用kwargs调用函数。
您可以在自定义模型中覆盖run,例如,排队作业
class Jobs(CrontabBase):
def run(self):
func = self.get_function()
kwargs = self.get_kwargs()
# Celery task API:
func.delay(**kwargs)
# Dramatiq actor API:
func.send(**kwargs)
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
bronski-0.4.0.tar.gz (5.1 kB 查看哈希)
构建分布
bronski-0.4.0-py3-none-any.whl (5.6 kB 查看哈希)
关闭
bronski-0.4.0.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | abcc5483feb54e641f21b5979cb15927e0cb952284789293ef1635eb5c4289b3 |
|
MD5 | 878b32a1007f9cbb4474939395884e07 |
|
BLAKE2b-256 | e4f0216a6ef12dfd5ef5c20f5e266e3fdb4482df42b8f6b7e9497459cb5cd0a5 |
关闭
bronski-0.4.0-py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c2b36a1e18fd9a8ced3c88458ded01d28da6c15c960d42b85a4c211e0a6f06f2 |
|
MD5 | 9c67f70835e5f1e5bd48e311b5f41fda |
|
BLAKE2b-256 | cdcffb470de058c741c02eab4741a2a884ee86204a2ee2628d74d0a2b7fd6b72 |