我正在学习WebSockets,我最喜欢的语言是PHP。当然,我选择使用Ratchet库来构建我的WebSocket服务器。到目前为止,我对Ratchet的简单性印象深刻,但是我对他们在这里推荐的PECL扩展感到困惑。他们说安装libevent(完成),然后安装PECL libevent。我有点困惑,因为有几个人用
取得了成功。PECL install libevent
,但这给了我一个错误,说明只有测试版可用。厌倦了在可能成为生产解决方案的产品上安装beta软件,我碰巧遇到了另一个PECL扩展,称为event。
PECL扩展'event'明确地声明它"提供libevent库的接口…PHP"。我想知道如果我安装并启用"事件"扩展,如果它将工作在libevent的地方。
有没有人知道如果'事件' php扩展将工作在地方'libevent' php扩展,在棘轮?
TL;DR
。
推理:
PECL libevent似乎不再被积极维护,所以,对我来说,看起来Ratchet应该考虑为PECL事件扩展提供支持,而不是明显过时的PECL libevent扩展。
不幸的是,他们的API不兼容,因为PECL事件是面向对象的API,所以,除非在棘轮中有对PECL事件API的显式支持,否则你就不走运了。
编辑
看起来棘轮使用React,其中做为PECL事件提供一个适配器。
$ pecl install libevent-beta
,但我实际上怀疑,考虑到最新发布的日期,它甚至可以构建为当前的PHP版本。