mvf-tech / servicer
1.6.0
2024-05-30 13:59 UTC
Requires
- php: ^7.4|^8.0
- ext-redis: *
- drupsys/servicer-contracts: ^1.0
- guzzlehttp/guzzle: ^7.4
- lstrojny/functional-php: ^1.17
- nesbot/carbon: ^2.58
- psr/container: ^1.0|^2.0
Requires (Dev)
- symfony/var-dumper: ^4.2
- dev-master
- 1.6.0
- 1.5.0
- 1.4.0
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 0.13.5
- 0.13.4
- 0.13.3
- 0.13.2
- 0.13.1
- 0.13.0
- 0.12.1
- 0.12.0
- 0.11.1
- 0.11.0
- 0.10.2
- 0.10.1
- 0.10.0
- 0.9.0
- 0.8.3
- 0.8.2
- 0.8.1
- 0.8.0
- 0.7.15
- 0.7.14
- 0.7.13
- 0.7.12
- 0.7.11
- 0.7.10
- 0.7.9
- 0.7.8
- 0.7.7
- 0.7.6
- 0.7.5
- 0.7.4
- 0.7.3
- 0.7.2
- 0.7.1
- 0.7.0
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.3
- 0.5.2
- 0.5.1
- 0.5.0
- 0.4.4
- 0.4.3
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.0
- 0.1.0
- 0.0.3
- 0.0.2
- 0.0.1
- dev-AB-2378
- dev-MER-1489
- dev-fix_tags
- dev-revert_MER-1351
- dev-MER-1168
- dev-MER-1151
- dev-MER-1095
- dev-MER-1054
- dev-MER-990
- dev-MER-948
This package is auto-updated.
Last update: 2024-09-30 14:44:26 UTC
README
各种辅助工具,可用于PHP中简化事件创建和消费。
此包旨在与event-consumer可重用服务一起使用。
入门
在本节中,您将了解如何设置PHP应用程序以消费和发布事件。
入口(事件消费者)
为了在PHP应用程序中消费事件,您需要使用event-consumer可重用服务。该服务是一个基于Node的应用程序,这是由于PHP的限制而必需的。简而言之,PHP不适合长时间运行的任务,当PHP进程长时间运行而不重启时,往往会发生资源泄漏和其他各种问题,使得基于PHP的消费者不可靠。
在上面的图中,您可以看到这种架构的样子。event-consumer服务读取存储在SQS队列中的消息(事件),并将每个消费的消息发送到您的web服务器上的events端点。
以这种方式在网络中发布事件消息有些奇怪,但这样可以帮助我们实现PHP中通常很难做到的两件事。
这将在event-consumer和我们的EventHandler之间放置一个web服务器(无论是apache还是nginx),这是实现PHP中“并发”最容易和最可靠的方式。**注意**:还有其他替代方法,例如ReactPHP,但在PHP社区中并不常用。
这避免了长时间运行的进程,每个消息都由PHP进程的不同实例处理,避免了长时间运行进程在PHP中可能遇到的各种问题。
在您的应用程序中,您需要两个东西
Controller
,其中将处理events
路由Psr\Container\ContainerInterface
兼容的容器,这是您将注册任何由控制器和您的EventHandlers
所需的依赖的地方
了解如何设置