我session_start()在主服务器上遇到了问题.当我第一次加载页面时,完成请求所需的时间不到1秒.如果我等待大约12-15秒然后重新加载页面,加载时间将是相同的.但是当我尝试刷新页面后,例如,在初始加载后3或5秒,服务器响应的时间等于10秒.
我做了一些测试来定义我的脚本中的瓶颈,我发现,该函数session_start()执行了9.8秒.我正在使用PEAR包HTTP_Session2.这是代码片段:
HTTP_Session2::useCookies(SESSION_USE_COOKIE);
/* Next line was added to make logging of execution time possible. */
self::writeToFile('HTTP_useCookies(1) -> '.self::getWorkTime());
HTTP_Session2::start("SID");
self::writeToFile('HTTP_start(2) -> '.self::getWorkTime());
HTTP_Session2::setExpire(time() + SESSION_EXPIRE);
self::writeToFile('HTTP_setExpire(3) -> '.self::getWorkTime());
Run Code Online (Sandbox Code Playgroud)
日志文本:
//First loading (13:34:35)
HTTP_useCookies(1) -> 0.00038
HTTP_start(2) -> 0.00077
HTTP_setExpire(3) -> 0.00090
// Second loading (13:34:39)(4 seconds later)
HTTP_useCookies(1) -> 0.00029
HTTP_start(2) -> <<<<<< 10.80752 >>>>>
HTTP_setExpire(3) -> <<<<<< 10.80780 >>>>>
//Third loading (13:34:56)
HTTP_useCookies(1) -> 0.00041
HTTP_start(2) -> 0.00071
HTTP_setExpire(3) -> 0.00083
Run Code Online (Sandbox Code Playgroud)
所以我发现,问题在于HTTP_Session2::start() …
我希望能够计算执行许多函数所需的时间.我在考虑使用某种类型的秒表课程.我可以在每个函数调用之前和之后调用start/stop,但这对我来说似乎非常难看.没有秒表课,有没有办法做到这一点?Reflections类中的某些东西可以帮助解决这个问题吗?
在此先感谢您的投入.
我有一个简单的SQL查询,当从C#运行时需要超过30秒,然后每次超时,而在SQL Server Management Studio上运行时立即成功完成.在后一种情况下,查询执行计划不会显示任何麻烦,并且通过一些简单的操作可以很好地传播执行时间.
我EXEC sp_who2在查询从C#运行时运行' ',它被列为占用29,000毫秒的CPU时间,并且没有被任何东西阻止.
我不知道如何开始解决这个问题.有没有人有一些见解?
查询是:
SELECT
c.lngId,
...
FROM tblCase c
INNER JOIN tblCaseStatus s ON s.lngId = c.lngId
INNER JOIN tblCaseStatusType t ON t.lngId = s.lngId
INNER JOIN [Another Database]..tblCompany cm ON cm.lngId = cs.lngCompanyId
WHERE t.lngId = 25
AND c.IsDeleted = 0
AND s.lngStatus = 1
Run Code Online (Sandbox Code Playgroud) 我想增加PHP脚本的最大执行和输入时间.我将以下两行添加到位于文档根目录的.htaccess文件中:
php_value max_execution_time 8000
php_value max_input_time 4000
Run Code Online (Sandbox Code Playgroud)
它在我的开发服务器上工作得很好,但在生产服务器(GoDaddy)上我收到500内部服务器错误.为什么会这样?
我有几个AppleScripts,我想从Java运行.我有几个选择,包括:
((new ScriptEngineManager()).getEngineByName("AppleScript")).eval(scriptString)))Desktop.getDesktop().open("name.app"))这两个似乎是我最好的选择,我很想知道
我现在有一个PHP脚本循环遍历一组数组的组合.我可以使用简单的PHP脚本在1小时内测试总计500万亿个组合中的6.1亿个.是否有可能以今天普通PC上运行的任何语言编写程序,能够在不到6个小时内测试多个阵列的所有500万亿组合?
此外,我没有资源使用分布式或集群计算来完成此任务.我可以期望将代码转换为多线程java/c#会有什么样的收获?
谢谢
我为用户提供了一种灵活的方法来使用JavaScript转换数据,在服务器端使用Node.js执行.使用该设计,需要考虑3个问题:
安全性:我使用沙箱解决了安全问题,以避免使用本机Node.js库.
资源:我们可以使用v8选项轻松设置最大内存使用量--max_executable_size.关于CPU使用率,我将看到如何使用cpulimit或管理它renice,现在并不重要.
时间:我需要限制我的脚本的执行时间,以避免它们作为hangry zombies运行.在这里,我陷入困境.
我尝试过类似的东西:
node -e '
setTimeout(function() {
console.log("timeout");
process.exit;
}, 5000);
console.log("begin");
while (1);
'
Run Code Online (Sandbox Code Playgroud)
但是这段代码只显示"开始",似乎我的超时从未被调用过.任何的想法 ?
一些指示,将不胜感激.我正在阅读大约1M行数据,使用以下代码需要大约24小时.如何改善执行时间?
该阵列Day包含n的值第一天从一开始和有特定日期更然后一个记录.该程序检查特定ID(存储在unique_id)是否在180天内重复.
%// calculating the number of repeats within 180 days
fid2 = 'data_050913/Unique_id_repeat_count1.xlsx';
fid1 = 'data_050913/data_050913_2000.csv';
fid_data = fopen(fid1);
data = fgetl(fid_data); %// the first line, title line
ep = 0; %// position point number
while 1
data = fgetl(fid_data);
if(length(data)<10)
break;
end
ep = ep+1;
id = find(data == ',');
unique_id(ep) = str2num(data(1:id(1)-1));
day(ep) = str2num(data(id(8)+1:id(9)-1));
end
repeat = zeros(ep,1);
tic
i = 1;
count = 0;
while i <= ep
j …Run Code Online (Sandbox Code Playgroud) 我正在测试一些PHP脚本的执行时间,这些脚本的目的是在我的网站上提供Web内容.
但是我得到了不一致的结果.
测量执行时间并记录到文本文件中.
其中一个脚本基本上从磁盘读取jpeg图像并将其提供给客户端.
以下是脚本的简化版本及相关代码:
<?php
// save initial time
$t1 = microtime(true);
// set header for a jpeg image
header('Content-Type: image/jpeg');
// read a file from the hard drive and send content
// (the real code serves every time a different image based on the request)
readfile( 'the_image.jpg' );
// flush output buffer
flush();
ob_flush();
// save final time
$t2 = microtime(true);
// elapsed time in milliseconds
$te = round( ( $t2 - $t1 ) * 1000 );
// …Run Code Online (Sandbox Code Playgroud) 我是数据库的唯一管理员.我想运行一次性脚本,基本上需要大约3800个扫描图像(它将增长到10万)并使用PHP exec()函数为每个图像创建几个缩略图来执行外部程序imagemagick来创建那些缩略图.
我创建了脚本,启动它,一切都完美无缺!一切都在我的本地开发服务器上完成.该脚本大约需要11分钟来创建数千个缩略图.这是每隔一年运行一次的操作,因此后果很少.
到现在为止还挺好.这是我遇到问题的时候.
我在本地开发服务器上所做的一切,我在实时服务器上进行测试.我有hostgator的共享主机帐户.在共享主机上运行我的11分钟长脚本会给出错误"超过30秒的最大执行时间...".我做了我的研究,尝试了这篇文章中的许多解决方案(增加php的最大执行时间),只是为了意识到我无法改变共享主机上脚本的最大执行时间.
我被卡住了.所以,我的问题是这里显而易见的解决方案是什么.
我正在考虑为每200张图像启动脚本,自动刷新页面并为接下来的200张图像再次运行脚本,依此类推,直到没有更多图像为止.这样我就可以确定我的共享主机上允许的最长执行时间是30秒.它看起来像是一个解决方案,但我不确定这是否是否定,如果我将遇到更大的问题,太多的负面影响..
这是明显的解决方案吗?有人遇到同样的问题吗?你们有什么建议的?
谢谢