问题
2apache
台服务器的响应时间很长,但我没有看到 CPU 或内存达到最大值。
细节
我有 2 apache
台服务器为客户端提供静态内容。
- 这个网站有很多流量。
- 在高流量时,我每秒有大约 10 个请求(html、css、js、图像)。
- 每个 HTML 向服务器发出 30 个其他请求以加载 js、css 和图像。
- Safari 开发者工具显示,每次我点击一个 html 页面时,都会传输 2MB
- 这两个服务器正在运行
Amazon Web Service
- 两个实例都是 m1.large (2 CPUS, 7.5 RAM)
- 我在同一台服务器上提供图像
- 服务器在美国,但很多流量来自欧洲
我试过了
- 从 prefork 变为 worker
- 增加进程
- 增加线程
- 增加超时
我正在使用ab
(apachebench) 运行基准测试,但没有看到任何改进。
我的问题是:
- 提供图像和像js(400k)这样的大型资源是否可能会减慢服务器的速度?
- 是否有可能每台服务器每秒 5 个请求只是过多的流量并且我无法进行调整,所以唯一的解决方案是添加更多服务器?
amazon web services
带宽有问题吗?
新信息
正在从 GlusterFS 上的挂载目录中读取我的文件
使用 ab (apache bench) 收集的指标在同一网络上的 EC2 实例上运行
Connections: 500
Concurrency: 200
Server with files on mounted directory (files on glusterfs)
Request per second: 25.26
Time per request: 38.954
Transfer rate: 546.02
Server without files on mounted directory (files on local storage)
Request per second: 1282.62
Time per request: 0.780
Transfer rate: 27104.40
新问题
从挂载目录(NFS 或 GlusterFS)读取资源(htmls、js、css、图像)是否可能会显着降低 Apache 的性能?
谢谢