高并发web应用性能提升实践
性能提升措施
- 机器扩容
- 限流(保证应用不被压垮而导致服务hang住)
- 缓存(jvm缓存、远程分布式缓存)
为了避免远程缓存的网络耗时,可以考虑远程缓存本地化部署 - 适当地使用多线程,管理好线程,避免线程过多没有回收,导致无法创建新线程
- 保证应用间调用在同一级房
确保性能符合预期
- 压测
关注qps、rt(响应时间)、机器load(机器核数的1.5以下,以上则用户数太多性能有问题,适当降低用户数)、cpu使用率、fgc次数和耗时。通过压测来确保系统在承受这么大流量的时候,系统是稳定的,qps和rt符合预期,机器load基本等于或稍小于机器cpu核数