pgmq简单试用
pgmq 提供了rust 以及python client 但是社区也有其他语言的实现,比如golang,dart,java,node,net 以及适配sqlalchemy的,以下是一个简单试用
环境准备
- docker-compose
services:
pgmq:
image: tembo.docker.scarf.sh/tembo/pg17-pgmq:latest
ports:
- "5432:5432"
environment:
- POSTGRES_PASSWORD=postgres
代码集成
通过官方python sdk,实际上python sdk 内部调用的就是pgmq 的sql 函数
- app.py
from tembo_pgmq_python import PGMQueue, Message
queue_name = "my_queue"
queue = PGMQueue(
host="127.0.0.1",
port="5432",
username="postgres",
password="postgres",
database="postgres"
)
queues = queue.list_queues()
if queue_name not in queues:
queue.create_queue(queue_name)
msg_id: int = queue.send(queue_name, {"hello": "world"})
print(f"msg_id: {msg_id}")
read_message: Message = queue.read(queue_name, vt=30)
print(read_message)
- 效果

db 存储

说明
以上是一个简单使用,基于的python sdk 测试,使用上还是比较简单的,对于基于pg db 项目需要队列场景的值得尝试下
浙公网安备 33010602011771号