高并发对服务器的需求有哪些?
1)从客户端看
尽量减少请求数量,比如:依靠客户端自身的缓存或处理能力。
尽量减少对服务端资源的不必要耗费,比如:重复使用某些资源,如连接池客户端处理的基本原则就是:能不访问服务端就不要访问。
2)从服务端看
增加资源供给,比如:更大的网络带宽,使用更高配置的服务器,使用高性能的Web服务器,使用高性能的数据库。
请求分流,比如:使用集群,分布式的系统架构。
应用优化,比如:使用更的编程语言,优化处理业务逻辑的算法,优化访问数据库的SQL。
基本原则:分而治之,并提高单个请求的处理速度。
一个系统的并发能力是多少呢?怎么衡量?
衡量指标常用的有响应时间,吞吐量,每秒查询率QPS,并发用户数
响应时间:系统对请求做出响应的时间。你简单理解为一个http请求返回所用的时间
吞吐量:单位时间内处理的请求数量。
QPS:每秒可以处理的请求数
并发用户数:同时承载正常使用系统功能的用户数量。也就是多少个人同时使用这个系统,这个系统还能正常运行。这个用户数量就是并发用户数啦。