当前位置:  开发笔记 > 编程语言 > 正文

如何对网站进行分析?

如何解决《如何对网站进行分析?》经验,为你挑选了1个好方法。

我目前有一个django网站,它有点慢,所以我想了解发生了什么.我如何对其进行分析以区分:

网络的影响

我正在使用的托管效果

javascript的效果

服务器端执行(python代码)和sql访问的效果.

由于我今晚碰巧遇到的巨大头痛,我没有考虑任何其他影响.

当然,对于其中一些我可以使用firebug,但是一些效果是相关的(例如,javascript可能看起来很慢,因为它正在进行慢速网络访问)

谢谢



1> pfote..:

客户端:

检查firebug是否/需要多长时间加载页面组件,以及加载完成后浏览器需要多长时间呈现页面.如果一切都很快但渲染需要时间,那么可能你的html/css/js是问题,否则它就是服务器端.

服务器端(我假设你坐在一些类似unix的服务器上):

使用apache bench(ab,apache webserver包的一部分)或httperf检查Web服务器的小静态内容(一个小的gif或一个小的html页面),服务器应该能够每秒回复至少100个请求(的当然,这在很大程度上取决于你的测试内容,网络服务器类型,硬件和其他东西的大小,所以不要认真对待那100个).如果那看起来不错,

使用ab或者httperf在"静态视图"(不使用数据库对象)上测试django ,如果这样做会减慢它的暗示,你需要更多的CPU功率.检查服务器上的cpu利用率top.如果没关系,问题可能在于Web服务器执行python代码的方式

如果服务半静态内容没问题,那么您的问题可能是数据库或IO限制.数据库问题是一个广泛的领域,这里有一些一般的建议:

检查i/o吞吐量iostat.如果您看到很多写入,那么您可以获得更好的光盘子系统,更快的raid,SSD硬盘驱动器......或者优化您的应用程序以减少写入量.

如果它的大量读取,主机可能没有足够的ram专用作文件系统缓冲区,或者您的数据库查询可能未被优化

如果i/o看起来没问题,那么数据库可能不适合您的工作负载或未正确配置.记录慢查询和监视数据库活动,锁等可能会给你一些想法

如果您告诉我们您使用的硬件/软件,我可能会提供更详细的建议

编辑/ PS:忘了一件事:当然你的应用程序可能设计不好,做了很多不必要/低效的事情......

推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有