mihaisolomon / event-store-client
异步 TCP 连接的事件存储客户端
Requires
- php: ^7.2
- ext-json: *
- amphp/amp: ^2.1.2
- amphp/artax: ^3.0.14
- amphp/byte-stream: ^1.6
- amphp/file: ^0.3.5
- amphp/socket: ^0.10.12
- google/protobuf: ^3.9
- mihaisolomon/event-store: v8.0.1
- ramsey/uuid: ~4.1
Requires (Dev)
- amphp/log: ^1.0
- doctrine/instantiator: ^1.1
- php-coveralls/php-coveralls: ^2.1
- phpspec/prophecy: ^1.7.2
- phpunit/phpunit: ^8.2.2
- prooph/php-cs-fixer-config: ^0.3
- sebastian/object-enumerator: ^3.0.3
Suggests
- ext/protobuf: for protobuf PHP extension (pecl)
- dev-master
- v1.0.1
- v1.0.0-RC-2
- v1.0.0-RC-1
- v1.0.0-beta-10
- v1.0.0-beta-9
- v1.0.0-beta-8
- v1.0.0-beta-7
- v1.0.0-beta-6
- v1.0.0-beta-5
- v1.0.0-beta-4
- v1.0.0-beta-3
- v1.0.0-beta-2
- v1.0.0-beta-1
- dev-rc2
- dev-allow-php8
- dev-dependabot/composer/prooph/php-cs-fixer-config-tw-0.4.0or-tw-0.5.0
- dev-feature/unreference-heartbeat
- dev-feature/unreference-heartbeat2
- dev-better-test
- dev-unreferenced_heartbeat
This package is not auto-updated.
Last update: 2024-09-25 20:17:47 UTC
README
PHP 7.4 事件存储客户端实现。
概述
Prooph 事件存储客户端支持通过 TCP 进行异步非阻塞通信,与 EventStore。
EventStoreConnection
在客户端和事件存储服务器之间维护一个全双工连接。
扩展
推荐使用 Google 的 protobuf
扩展,但它不是必需的。
当缺少此扩展时,客户端将回退到使用通过 composer 安装的 google/protobuf
。
allegro/php-protobuf 扩展不兼容。
如果您的应用程序需要大量并发套接字连接,则需要额外的扩展。
安装
客户端
您可以通过将 "prooph/event-store-client": "dev-master"
添加到 composer.json 中作为需求来通过 composer 安装 prooph/event-store-client。
服务器
使用 docker
docker run --name eventstore-node -it -p 2113:2113 -p 1113:1113 eventstore/eventstore
请参阅 eventstore.org 的文档。
参见 服务器部分。
在 docker 文件夹中,您将找到三种不同的 docker-compose 配置(单节点、3 节点集群和 3 节点 DNS 集群)。
快速入门
请参阅 examples
文件夹以获取简要概述。
单元测试
纯 PHP
运行带有内存数据库的服务器
注意:这是 Event Store 数据库的启动脚本,不是由本库提供的!
./run-node.sh --run-projections=all --mem-db
您需要忽略 ignore
组
./vendor/bin/phpunit --exclude-group=ignore
这些是仅针对空数据库运行的测试,只能手动运行。
在下次运行之前,重新启动服务器。这样您就可以始终从一个干净的服务器开始。
使用 Docker
见: https://github.com/prooph/event-store-client/tree/master/docker/unittest
文档
文档在 prooph 网站上。
支持
- 在标记为 #prooph 的 Stack Overflow 上提问。
- 在 https://github.com/prooph/event-store-client/issues 上提交问题。
- 在 prooph gitter 聊天室打招呼。
贡献
请随意分支和扩展现有插件或添加新插件,并通过发送带有您更改的 pull request!为了建立一致的代码质量,请为您的所有更改提供单元测试,并可能修改文档。
许可
在 新 BSD 许可证 下发布。