仅需一步,轻松实现分布式异步任务。
Project description
仅需一步,轻松实现分布式异步任务。
Brokers
- MemoryBroker
- CronBroker
- WebHookBroker
- RabbitMQBroker
- RedisBroker
- RedisStreamBroker
- RedisPubSubBroker
- KafkaBroker
😋example
# example.py
from onestep import step, WebHookBroker
# 对外提供一个webhook接口,接收外部的消息
@step(from_broker=WebHookBroker(path="/push"))
def waiting_messages(message):
print("收到消息:", message)
if __name__ == '__main__':
step.start(block=True)
also, you can use onestep
command to start, like this:
$ onestep example
then, you can send a message to webhook:
$ curl -X POST -H "Content-Type: application/json" -d '{"a": 1}' http://localhost:8090/push
🤩 other brokers
from onestep import step, CronBroker
# 每3秒触发一次任务
@step(from_broker=CronBroker("* * * * * */3", body={"a": 1}))
def cron_task(message):
assert message.body == {"a": 1}
return message
if __name__ == '__main__':
step.start(block=True)
🤔more examples: examples
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
onestep-0.4.1.tar.gz
(15.7 kB
view hashes)
Built Distribution
onestep-0.4.1-py3-none-any.whl
(23.5 kB
view hashes)