【问题标题】:I'm trying to get streams in php我正在尝试在 php 中获取流
【发布时间】:2012-07-23 21:32:19
【问题描述】:

所以我一直在研究更好的架构和运行时性能的技术,并且出现了流,阅读了文档和博客文章,我现在只是模糊地意识到使用流。我的问题是您将如何解释流、streamWrappers,以及最干净的 O-O 实现是什么?

我目前认为我可以使用流函数对象来提高返回应用程序视图和客户端请求处理的速度。但我不知道怎么做。

无论如何...有人明白我在说什么吗?我不认为这是微不足道的。

【问题讨论】:

  • I currently think that I might be able to use a stream function object that could improve the speed of returning application views, and client request handling - 如果您正在开发一个基于 Web 的应用程序(听起来您正在使用 MVC 框架),那么我高度怀疑情况是否如此.当使用 PHP 生成网页时,所有与客户端相关的流都由 Web 服务器处理,PHP 不需要 - 也不应该 - 参与其中。

标签: php oop nonblocking


【解决方案1】:

除非您的“观看次数”很大,否则您从直播中看到的好处很少。

所以从我的角度来看,这里有两种可能性:

  1. 你认为你可以让事情变得比现在更快
  2. 您实际上遇到了性能问题,并认为您可以通过流加快处理速度。

如果您属于第一类,请不要朝这个方向看。除非您正在处理更大的文件,否则这将是相关的。

如果您属于第 2 类,那么您的瓶颈出现在您视野中的可能性非常小。通常,对于 PHP 应用程序,这是应用程序中最快的部分之一。

您应该安装 xdebug,开始使用 Webgrind/Valgrind/KCachegrind/WinCacheGrind 分析和分析您的代码。这将为您提供大量信息,并准确告诉您问题出在哪里。

【讨论】:

  • 好的,我将有可能是巨大的视图,或者更确切地说,我想要巨大的视图选项(我正在构建一个提供艺术作品、动画和视频的应用程序。)该项目是一个用于处理任何类型且可能很大的内容的应用程序框架。
  • 所有这些东西仍然没有多大意义,除非它更具体。如果您担心动态文件流,那么是的.. 流应该是一个选项。应用程序视图.. 与 PHP MVC 框架一样,答案是否定的。
【解决方案2】:

流真的很简单,它只是一个像流一样工作的资源对象:以线性方式可读和可写,所以我/我们正在处理流,只要我们每次编写指定服务内容和方式的代码时都倾斜响应请求。虽然它的功能远不止于此,但还有一个名为 pecl_http 的梨扩展,它真正简化了 http 的工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 2022-01-17
    • 1970-01-01
    • 2020-12-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多