【发布时间】:2010-01-23 10:14:58
【问题描述】:
如何实现 PHP Socket Server,我使用的是 PHP5。
是否有现成的框架可供我使用,而不是深入了解实现细节的细节? 基本上我想使用这个 Socket Server 为 Flash 客户端提供服务,这将在 Apache 环境中运行。
这是我第一次涉足 PHP 领域,所以请考虑我是菜鸟。
【问题讨论】:
如何实现 PHP Socket Server,我使用的是 PHP5。
是否有现成的框架可供我使用,而不是深入了解实现细节的细节? 基本上我想使用这个 Socket Server 为 Flash 客户端提供服务,这将在 Apache 环境中运行。
这是我第一次涉足 PHP 领域,所以请考虑我是菜鸟。
【问题讨论】:
看看 Aleksey Zapparov 的 PHP Socket 服务器
http://www.phpclasses.org/browse/package/5758.html
将您自己的代码挂在上面非常简单。但请注意,您应该小心内存管理。如果您正在编写一个非常复杂的 OO 应用程序,那么您绝对应该安装循环引用检查垃圾收集器。而且,由于它使用 socket_select(),您不希望 ti 等待您的代码做某事的时间过长。
或者(如果您在 Microsoft 平台以外的任何平台上运行)将 php 进程挂起 [x]inetd 并仅使用 stdio 进行通信可能更简单。
HTH
C.
【讨论】:
查看Zend_AMF(强调我的)
Zend_Amf 提供对 Adobe 的 » 动作消息格式 (AMF) 的支持,以允许 Adobe 的 » Flash Player 和 PHP 之间的通信。具体来说,它提供了一个网关服务器实现,用于处理从 Flash Player 发送到服务器的请求,并将这些请求映射到对象和类方法以及任意回调。
和AMFPHP 作为替代。
另外,请查看PHP Socket's API 并查看此IBM Article about Memory Management with PHP。
编辑 这不是服务器推送。 PHP 不太适合长时间运行的进程。如果您想要推送实现,请查看Comet 技术。
【讨论】: