Tembo发布了基于Postgres的消息队列PGMQ v1.0,进行了Twitter规模的性能测试,每秒写入超过150,000条消息,每秒读取消息30,000条。他们对Postgres进行了配置更改,提供了优化建议。性能是在特定条件下实现的,对于大多数用户来说并不需要如此大的容量。
本文介绍了在Postgres上构建队列时需要做出的重要设计决策,包括如何标记消息为“进行中”和“已完成”。通过设计可见性超时,可以进一步简化架构,无需外部进程进行队列管理。PGMQ是一个遵循这种自我调节队列的Postgres扩展。
本文介绍了使用pgrx工具生成pgmq扩展的方法,包括创建元数据对象和基本操作。同时,还讨论了pgmq.drop_queue()函数的实现细节。读者可以在GitHub上查看代码和获取更多信息。
PGMQ是一个基于Postgres的消息队列封装扩展,具有消息传递、归档和保留功能,支持SQL接口和Rust/Python客户端SDK。通过阅读README了解安装和使用方法。计划发布pg_later扩展和与SQS和Redis的性能比较。
完成下面两步后,将自动完成登录并继续当前操作。