WEB开发网
开发学院操作系统Linux/Unix 使用应用程序跟踪对性能改变进行量化分析 阅读

使用应用程序跟踪对性能改变进行量化分析

 2006-08-26 08:12:12 来源:WEB开发网   
核心提示: 清单 4. 配置了 AllowOverride 的示例 httpd.confDocumentRoot "/var/apache/htdocs"<Directory />Options FollowSymLinksAllowOverride Limit<

清单 4. 配置了 AllowOverride 的示例 httpd.conf

DocumentRoot "/var/apache/htdocs"
<Directory />
  Options FollowSymLinks
  AllowOverride Limit
</Directory>
<Directory "/var/apache/htdocs">
  Options Indexes FollowSymLinks MultiViews
</Directory>

重新启动 httpd 守护进程并再次运行这些测试,其结果如清单 5 所示。

清单 5. 开启了 AllowOverride Limit 的 100 次请求的结果

sunbox# truss -c -t write,read,open64,stat64,mmap64 -p 21136
^C
syscall        seconds  calls errors
read           .012   200
write          .021   200
mmap64          .007   100
stat64          .007   100
open64          .022   500   400
           -------- ------  ----
sys totals:       .072  1100  400
usr time:        .141
elapsed:        16.660

初看起来,系统调用耗费的时间下降了,但这是因为使用了 -t 选项将跟踪任务限制于一些有意义的系统调用。大多数系统调用并没有发生变化,但现在有 500 次 open64 调用,其中有 400 次返回了错误。执行 open64 的时间增加了(从 0.006 秒增加到 0.22 秒),同时用户空间部分的时间也增加了(从 0.12 秒增加到 0.141 秒)。

时间增加是因为 Apache 现在必须完成附加的工作以处理该请求,即使没有配置重写。单独的 AllowOverride Limit 配置明显地增加了开销。问题依然存在,即什么导致了这些错误? 要回答这个问题,可以跟踪单个 Web 请求,如清单 6 所示。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:使用 应用程序 跟踪

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接