如果压测的时候发现系统的tps不达标,此时应该如何优化系统

    对系统进行压测,比如说每秒压个几百请求到几千请求,甚至上万请求,此时发现死活压不上去,压来压去,你的系统最多每秒处理几百个请求,根本达不到几千个请求,此时就发现系统的tps不达标,此时如何优化.

    其实这个时候如何发现tps不达标,通常说明你的系统肯定是每个请求处理的时间太长了,所有就导致你单位时间内,在有限的线程数量下,能处理的tps就少了,这个时候往往要先优化性能,在提tps.

    假如说你一共有200个线程,结果你每个请求要耗费500毫秒,每个线程每秒就只能处理2个请求,200个线程每秒只能处理400个请求,比你期望的单机处理500~600的请求要少了很多,.

    既然说要优化性能,就得通过打日志的方式,或者监控的方式,检查你服务的每个环节的性能开销,通常来说打日志方式会细化一些,要靠监控把每个细节摸清楚,也挺难的.毕竟很多是代码细节.

    打日志的话,你可以在系统里面的一个请求,把每一次数据库,缓存之类的耗时都记录在日志里面,

    比如说你忽然发现某个SQL语句耗时300多ms,其它操作都是正常耗时范围内,那么你就可以对这个SQL进行优化.建立个索引啥的,或者是改写SQL. 让SQL语句优化到100毫秒差不多.

    这样每个请求只要300毫秒就可以了,每个线程每秒可以处理3个请求,200个线程每秒就可以处理600个请求了.