我的网络应用程序是php原生的,没有框架或任何东西,我的服务器是32GB内存,当网站上有大量流量时,它来得太慢(2秒页面加载变为50秒)。
使用
尝试AB测试public static <K,V> Map<K,List<V>> zipToMapList(List<K> keys,List<List<V>> values)
{
Map<K,List<V>> dataMap = new HashMap<>();
for(int idx = 0; idx < keys.size(); idx ++ )
{
dataMap.put(keys.get(idx), values.get(idx));
}
return dataMap;
}
它给出了
ab -n 20000 -c 1000 mywebsite.com
一段时间后
有没有为php或其他东西分配更多的RAM?
答案 0 :(得分:2)
最有可能的是,您正在达到最大并发连接数。阅读以下建议:
对于Windows Server(MPM_WinNT)
ThreadLimit
上配置ThreadsPerChild
和httpd-mpm.conf
。该值应足以处理多个和/或并发请求。 适用于Linux(模块相关)
MaxRequestWorkers
指令设置为您要处理的连接数。有关其他参考,您可以查看此文档以获取需要配置的指令,以便服务器可以正确处理多个和/或并发请求。 Apache MPM Modules