问题可能存在的位置:1.DB处2.Service处redis
对于DB处的错误缘由可能存在两种分别是:500,以及数据库操做异常数据库
500的缘由是:对于项目使用的链接池,出现500大部分的缘由是由于访问超时,由于线程池内的线程都被占用,全部再来的任务就须要等待,等待超时的时候就会给客户端访问500,异步
解决办法:1.升级配置,提升线程池内的线程数 2.进行读写分离,将查询单独进行操做
spa
数据库操做异常:觉得大量的任务须要访问数据库,数据库出现了锁表线程
2.对于service的错误,一样也是500链接超时接口
缘由:对于同一个接口访问的量很大,这样在内存中也会造成一个队列,在队列后面的任务不能执行队列
解决办法:将一些不须要实时的任务进行异步操做,须要实时的任务进行同步操做整个项目的比例大约是9:1内存
其中9的异步1的同步,添加一些辅助的软件来进行处理好比redis,Q等等来进行帮助
同步