草庐IT

Performance

全部标签

php - CMS 与文件系统存储 ID 可扩展性

请考虑以下事项:我存储了大约120万个TIF文件,大小从40KB到120KB不等。这些文档存储在具有NTFS文件系统的Windows服务器上。文档使用以下变量存储:客户文件类型图片文件夹实际图像见下文:C:\\\image001\1.TIF示例C:\1\3\image001\1.TiF这是一个PHP托管系统。现阶段表现尚可。我想知道最好的策略是什么。考虑到客户和文档量将急剧增加。我正在考虑用Jackrabbit替换整个存储内容管理系统。会是这样吗?或者以如下格式存储文档:客户文件类型Juliandateoftheyeardocument导入。当前用户6位唯一代码示例C:\1\1\167

php - 分析 PHP 应用程序,50% 的时间忙于构建类——这样可以吗?

我有一个用PHP编写的Web应用程序。它使用MySQL进行数据存储。今天我决定分析它以找出代码中的瓶颈并找出它的哪些部分运行得比其他部分慢。平常的东西。我做了很多工作,现在我的页面在我的桌面上加载时间不到0.05秒。但现在我的分析器告诉我,我的应用有一半时间都在忙于构建类。FrontController需要Config、Database和User类,它们在__construct中有自己的事情要做(),然后加载PageController,后者加载Cache和View,然后触发main()Page方法。所有这些东西占用了总工作时间的50%。其他50%用于查询数据库、处理查询结果并在Vie

php - PHP 中带有 'a' 选项的 fopen() 的效率

如果我写fopen($myfile,'a'),而$myfile是一个非常大的文件,服务器是否必须按顺序读取整个文件返回指向文件末尾的指针?或者它是否快速找到指向文件末尾的指针然后返回它?相关说明,当我随后使用fwrite()时,我假设它不会覆盖整个文件,对吗?它只是附加东西?我基本上是想弄清楚fopen()是否带有'a'选项,并且fwrite()是O(1)或O(n),其中n是现有文件的长度。 最佳答案 实际的复杂度取决于底层文件系统的复杂度,但PHP本身不会循环或读取整个文件,它会查找到结尾并从那里开始写入。在appendmore中

php - Codeigniter HMVC 对性能的影响

好的,所以HMVCinCodeigniter是scalablewebapplications(withKohana3)的方法基于许多stackoverflow讨论,例如HMVCpatterns和MVCvsHMVC.但是,在Codeigniter中使用HMVC方法将如何影响性能?据我了解,HMVC将“模拟一个Controller”。假设一个为期一天的“大型”项目,Codeigniter的实现是否会成为future的问题? 最佳答案 HMVC给CodeIgniter添加了两个主要的不同特性,这两个特性经常让人感到困惑:模块化MVC分层M

PHP 和 XML。使用 PHP 遍历 XML 文件

我现在深陷于foreach炼狱中,试图想出一种使用PHP(跟随XML文件内容)遍历此XML文件(下面的实际XML文本)的方法。我正在尝试做的是以下内容:获取所有文件夹元素名称如果文件夹元素的子文件夹属性为yes,则向下移动一个级别并获取该文件夹元素的名称如果没有移动到下一个文件夹元素画廊列表.xml:EventsBeach_Clean_2010Onna_VillageSunabe_Sea_WallFood_And_DrinkInsideLocationNightLife画廊列表.phpchildren()as$child){foreach($child->attributes()as$

php - 如何让 Symfony 更快

我的symfony项目运行非常慢,每页需要4到8秒(我在开发环境中工作)。我试过使用PHPAPC(有了它,它运行得更慢),我试过优化我的代码,我试过探索标准的symfony库,等等。但没有任何帮助。附言我有一个很好的硬件,我确定问题不在其中。 最佳答案 找出应用程序中的瓶颈所在。很可能,这不是Symfony问题,而是您做过的事情或您做事的方式。安装XDebug,分析您的应用程序,然后分析结果以确定是什么占用了所有相对时间来计算。您可能会看到一些东西占用了98%的相对时间,而且它可能是一些模糊的东西,比如超时请求等。

PHPExcel 读取速度太慢

我知道,这里有很多关于提高PHPExcel性能的问题。但它们都是关于写入数据,而我的问题是读取。我的功能:functionparse($filename){$objPHPExcel=PHPExcel_IOFactory::load($filename);$activeSheet=$objPHPExcel->getActiveSheet();$parsedData=array();$columnHeaders=array('order','ts','summ','name','quant','price','bccu');foreach($activeSheet->getRowItera

php - $classInstance->title 比 $classInstance->getTitle() 快 - 为什么大多数人使用较慢的方法?

我最近一直在阅读有关如何在PHP中优化代码以实现可伸缩性的文章。我今天阅读的几篇文章都不鼓励使用其他方法来简单地从类返回对象。所以基本上,他们说:如果你有这样的类:classmyClass{public$something;publicfunctionsetSomething($val){$this->something=$val;}//functionend}//classend$myClassInstance=newmyClass;而你想获得类属性$something,你应该这样做://echo$somethingfrommyClassecho$myClassInstance->s

php - 解密系列 - 找到连续整数序列的数量,使得它们的总和为零

下面是一个编程任务。给定一个由N个整数组成的序列。任务是找到连续整数序列的数量,使得它们的总和为零。例如,如果序列是:2,-2,6,-6,8有3个这样的序列:'2,-2''6,-6''2,-2,6,-6'我已经有以下用PHP编写的程序,它从STDIN读取输入(第一行包含后面的整数个数。)输入示例52-26-68这适用于较小的序列,但其效率为O(n^2)。对于包含100.000个整数的序列,哪种算法是合适的-效率可能为O(n)? 最佳答案 假设您的数据存储在一个数组中,让它成为arr.创建数组sum,这样:sum[i]=arr[0]+

!isset() 与 === null 的 PHP 性能

我知道isset()与empty()的基准测试,但我有仅在参数为null时才需要执行的代码。这是一个执行多次的函数,所以我想优化它。我知道isset()比empty()快,但是!isset()与===null呢?我知道该变量将存在,因此我只需要针对null对其进行测试。我正在考虑对!运算符(operator)。 最佳答案 我懒得要求别人对此进行基准测试,所以我尝试了一百万次迭代。差别很小,所以!isset()是更好的选择,因为如果变量未定义,===null会抛出错误。一百万次迭代:!isset().1118===null.1046顺