用django实现stomp
django-stomp的Python项目详细描述
Django跺脚
用django简单实现stomp。
它与activemq紧密相连,但可以与任何支持stomp的代理一起工作,只需稍作调整或不做任何调整。
安装
pip install django_stomp
在INSTALLED_APPS
中添加django_stomp
,就这样。
配置过程
尚未完全可用,但请随时查看我们的测试以获取见解。
消费者
首先,必须创建一个函数,该函数接收类型为django_stomp.services.consumer.Payload
的参数。假设模块app.sample
包含以下内容:
importloggingfromdjango_stomp.services.consumerimportPayloadlogger=logging.getLogger(__name__)defmy_honest_logic(payload:Payload)->None:logger.info("Yeah, I received a payload from django-stomp!")my_payload=payload.bodymy_header=payload.headersifmy_payload.get("my-dict-key"):payload.ack()else:logger.info("To DLQ!")payload.nack()
现在您必须提供代理连接详细信息,至少填写以下参数:
- stomp_server_主机
- Stomp_服务器端口
- 跺脚使用ssl
只需发出以下命令来创建作业:
python manage.py pubsub "/queue/your-stuff" app.sample.my_honest_logic
就这样了
测试
要执行测试,请首先执行以下操作:
docker-compose up -d
然后:
pipenv run tox