stomp-php / stomp-php
PHP 的 Stomp 支持
Requires
- php: ^7.3|^8.0
Requires (Dev)
- phpunit/phpunit: ^9.5
- dev-master
- 5.1.0
- 5.0.0
- 4.6.1
- 4.6.0
- 4.5.2
- 4.5.1
- 4.5.0
- 4.5.0-RC1
- 4.4.3
- 4.4.2
- 4.4.1
- 4.4.0
- 4.3.1
- 4.3.0
- 4.2.2
- 4.2.1
- 4.2.0
- 4.1.5
- 4.1.4
- 4.1.3
- 4.1.2
- 4.1.1
- 4.1.0
- 4.0.1
- 4.0.0
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.2.3
- 2.2.2
- 2.1.1
- 2.1.0
- 2.0.1
- 2.0.0
- dev-bugfix/135-handle-draining-messages
- dev-staabm-patch-1
- dev-support/version-3
- dev-support/version-2
This package is auto-updated.
Last update: 2024-09-22 04:45:20 UTC
README
该项目是一个 PHP Stomp 客户端,除了完全实现 Stomp 协议外,还提供了一些 ActiveMQ 和 Apollo 特定的工具,可以使您使用 PHP 进行消息传递变得更容易。
鸣谢
这个库最初由 Dejan Bosanac 开发。我们感谢您的贡献,并很高兴继续这项工作。
版本选择
- 对于新项目,您应使用
4.*
版本,该版本需要php-5.6
。对php-5.6
的支持随着版本5.*
的结束而结束。 - 对于运行旧版 PHP 版本的项目,您可以使用
4.2.*
版本用于php-5.5
和3.*
版本用于php-5.3
,请考虑更新 PHP。 - 对于运行
fusesource/stomp-php@2.x
客户端的项目,您可以使用版本2.2.2
。 - 所有高于
2.x
的版本都不会与fusesource/stomp-php
兼容。(https://github.com/dejanb/stomp-php。)
安装
composer require stomp-php/stomp-php
示例
您可以在我们的示例项目 https://github.com/stomp-php/stomp-php-examples 中找到不同的使用教程。
连接探测
很难确定套接字连接是否仍然有效,Stomp 允许我们使用心跳来测试客户端和服务器是否准备好接收消息。
您应使用 \Stomp\Network\Observer\ServerAliveObserver
或 \Stomp\Network\Observer\HeartbeatEmitter
来接收或发送心跳。这样做将确保您的客户端能够及时检测到损坏的连接。请参阅 https://github.com/stomp-php/stomp-php-examples 以获取一些带有额外注释的示例代码。
替换 fusesource/stomp-php
如果您之前使用了 fusesource/stomp-php
,您可以使用我们的 2.x
版本。
"require": { "stomp-php/stomp-php": "2.*" }
贡献
我们使用 PSR2
编码,请使用我们预定义的 pre_commit.sh
钩子。
测试
要运行测试,您首先需要通过 composer 获取测试套件的依赖项
$ php composer.phar install
功能测试套件分为三个代理版本。目前它在 ActiveMq
(端口 61010)、Apollo
(61020)、RabbitMq
(61030)、Artemis
(61040)上运行。Apollo 应配置为使用 admin:password,RabbitMq 使用 guest:guest。而 ActiveMq 必须配置为不使用任何登录信息。
您可以通过运行 travisci/bin/start.sh
设置所有代理。通过 travisci/bin/stop.sh
停止它们。(需要 Docker。)
如果您只想运行功能通用测试,请确保 Apollo 已配置。可以通过运行 ./travisci/bin/apollo-mq.sh 1.7.1
实现基本设置。(如果您想创建本地运行的代理,您可以在 travisci/docker/apollo-mq/
找到配置/设置。)