首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我如何找出我的应用程序速度慢的原因?

我如何找出我的应用程序速度慢的原因?
EN

Stack Overflow用户
提问于 2009-03-25 05:14:02
回答 9查看 2.8K关注 0票数 2

我在500 MB的Slicehost VPN上部署了一个简单的Rails应用程序。我是唯一一个使用这个应用程序的人。当我在笔记本电脑上运行它时,它就足够快了。但是,部署的版本速度太慢了。加载登录屏幕需要6到10秒。

我想知道为什么这么慢。这是我的密码吗?(不要这么认为,因为它在本地要快得多,但可能吧。)是Slicehost的服务器超载了吗?是互联网吗?

有人能提出一些我可以采取的技术或步骤来帮助缩小这个问题的原因吗?

更新:

抱歉忘了提一下。我在CentOS 5下使用Phusion客运(AKA、mod_railsmod_rack)运行它。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2009-03-25 12:29:41

如果你第一次装车的时候速度很慢,那很可能是因为乘客因为不活动而杀死了这个过程。我不记得所有的细节,但我确实记得有人使用cron作业来保持至少一个进程的活力,以避免在乘客需要重新装载环境时出现这种滞后。

编辑:更多细节这里

具体来说,池空闲时间默认为2分钟,这意味着在空转两分钟后,乘客将不得不重新装载环境以满足下一个请求。

票数 5
EN

Stack Overflow用户

发布于 2009-03-25 06:03:17

首先,找出服务器的响应是否特别慢。使用Firefox和Firebug插件查看每个组件(包括JavaScript和图形)下载所需的时间。假设主页面本身一直占用时间,您可以开始分析应用程序。您需要找到一个好的分析器,而且由于我实际上并不在Rails中工作,所以我不能建议您使用google "profile Ruby on rails“作为一些选项。

正如YenTheFirst所指出的,您正在使用的服务器软件和配置可能会导致速度放缓,但切片主机并没有选择这样做,因为slicehost只是提供了非常原始的服务器“切片”,您可以将其视为专用机器。( B)您不太可能看到一个立即运行的脚本突然花了6秒的时间,因为它正在以CGI的形式运行。一定有别的事情发生了。检查您正在使用的RAM数量:您进入交换区了吗?登录是在第一次点击时才慢一点,表示启动问题,还是总是慢?静态内容是慢的吗?这往往意味着一些网络问题(无论是在Slicehost端,还是在您的本地网络上)正在减慢速度,前提是您没有进行交换。

当你说“足够快”时,你就模糊了:笔记本电脑版本到Slicehost 6需要1秒吗?如果笔记本电脑还不错的话,那也就不足为奇了:毕竟,切片之所以便宜,是因为它们只是一台完整的服务器的一部分。在Slicehost,您使用的大概是8核计算机的1/32,而不是现代笔记本电脑的两个核心。Slicehost内核是快速的,但是与1/4的核心相比,你的笔记本电脑可能是一个尖叫器。:)

票数 4
EN

Stack Overflow用户

发布于 2009-03-25 22:36:32

试着品脱慢度所在的位置

1/应用程序速度慢,或基础设施(网络+ web服务器)

  • 在web服务器上放置一个静态文件,并通过浏览器访问它。

[2]如果速度较快,则应用程序+服务器配置可能会出现问题。

  • 数据库访问速度慢
  • 尝试一个带有simpel循环的页面:它慢吗?

[3]如果速度慢,那可能是你的基础设施。你可以检查:

  • 糟糕的网络连接:进行数据包捕获(例如Wireshark ),并查找重传、重复数据包等。
  • DNS解析速度慢吗?
  • 服务器配置错误?
  • 等。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/680302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档