Php 服务器在GAE上发送事件:¿;可能吗?
我想启用某种涉及PHP(后端)和JS(前端)的实时机制。SSE似乎是个不错的方法,因为我不需要双向连接 我面临的问题是Google App Engine正在缓冲PHP响应,破坏了flush()的使用,因此阻止我构建SSE服务器 有人知道如何使GAE不缓冲响应吗?使用流媒体?套接字?在GAE下证明有效的替代方案?我尝试过使用通道,但这带来了巨大的挑战,因为我的应用程序完全是基于PHP构建的,我唯一想做的就是添加一些实时通知功能。在同一个项目中有两种语言共存也有其自身的复杂性 任何回答、建议、输入或反馈都将不胜感激。编辑: 正如@Shrike在评论中指出的,这个答案中的信息已经过时了。使用新的运行时(python3、java11、PHP7),自动缩放的请求超时时间为10分钟,使用基本或手动缩放的请求超时时间为24小时(源代码:) 即使如此,也不可能使用服务器发送的事件 App Engine不支持在处理请求时以增量块的形式向客户端发送数据的流式响应。代码中的所有数据都按上述方式收集,并作为单个HTTP响应发送 (来源:) 传统答案(适用于Java 8、PHP 5和Python 2): 按照设计,服务器发送事件和Web套接字等技术在应用程序引擎上不起作用。App Engine中的所有前端请求的运行时间限制为60秒,任务限制为10分钟。因此,即使您将与客户端的连接保持打开状态(如服务器发送的事件),它也会在60秒后关闭。如果您可以打开与任务的web套接字连接(您不能),它将在十分钟后关闭 备选方案是:Php 服务器在GAE上发送事件:¿;可能吗?,php,google-app-engine,websocket,streaming,Php,Google App Engine,Websocket,Streaming,我想启用某种涉及PHP(后端)和JS(前端)的实时机制。SSE似乎是个不错的方法,因为我不需要双向连接 我面临的问题是Google App Engine正在缓冲PHP响应,破坏了flush()的使用,因此阻止我构建SSE服务器 有人知道如何使GAE不缓冲响应吗?使用流媒体?套接字?在GAE下证明有效的替代方案?我尝试过使用通道,但这带来了巨大的挑战,因为我的应用程序完全是基于PHP构建的,我唯一想做的就是添加一些实时通知功能。在同一个项目中有两种语言共存也有其自身的复杂性 任何回答、建议、输入或
- 正如你自己指出的那样。然而,channel API似乎没有与PHP很好地集成
- 正如齐格·曼德尔所指出的那样
- 切换到