Skip to content

v1.1.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 29 Oct 15:00
· 28 commits to main since this release

messaging-php v1.1.0

Phase 1:五个纯 PHP 驱动上线。

新增驱动

  • Beanstalkd:ack(delete)、requeue(release)、delay、TTR/优先级
  • Redis Streams:consumer group、XACK、headers/key、XAUTOCLAIM 恢复说明
  • NSQ:TCP PUB/SUB、FIN/REQ、心跳、超时缓冲
  • ActiveMQ Classic / ActiveMQ Artemis:STOMP 1.2、ack、延迟、headers
  • NATS Core:PUB/HPUB/SUB、headers、queue group;JetStream 未实现

核心改进

  • Manager 内置驱动注册:beanstalkd、redis、nsq、activemq、artemis、nats
  • Capabilities 新增 requiresActiveSubscription(NATS Core / Artemis)
  • 契约测试覆盖 ack / requeue / delay / headers / batch / 超时 / 二进制消息
  • docker-compose.yml 集成环境 + GitHub Actions 集成测试(fast 每次推送,heavy 每日)

已知限制

  • ActiveMQ 的 requeue 通过 re-SEND + ACK 实现(STOMP NACK 会丢弃消息),崩溃窗口内可能重复
  • Artemis 不支持 requeue(ARTEMIS-1983),且需先订阅再发布
  • NATS Core 为至多一次,需先订阅再发布;JetStream 未实现
  • Redis Streams 不支持同步 requeue,恢复依赖 XAUTOCLAIM
  • NSQ 仅 TCP,通道需在发布前存在

验证

  • PHPUnit:220 tests / 675 assertions
  • PHPStan level 5:无错误
  • CI:PHP 8.1–8.5 全部通过
  • 集成测试:Redis、Beanstalkd、NSQ、NATS、ActiveMQ、Artemis 对真实 broker 通过