存在的错误
2016-03-08 00:00
211 查看
摘要: 面对大用户量高并发时候普通的B/S架构不适用的原因以及可能会报错的位置
问题可能存在的位置:1.DB处2.Service处
对于DB处的错误原因可能存在两种分别是:500,以及数据库操作异常
500的原因是:对于项目使用的连接池,出现500大部分的原因是因为访问超时,因为线程池内的线程都被占用,所有再来的任务就需要等待,等待超时的时候就会给客户端访问500,
解决办法:1.升级配置,提高线程池内的线程数 2.进行读写分离,将查询单独进行操作
数据库操作异常:以为大量的任务需要访问数据库,数据库出现了锁表
2.对于service的错误,同样也是500连接超时
原因:对于同一个接口访问的量很大,这样在内存中也会形成一个队列,在队列后面的任务不能执行
解决办法:将一些不需要实时的任务进行异步操作,需要实时的任务进行同步操作整个项目的比例大约是9:1
其中9的异步1的同步,添加一些辅助的软件来进行处理比如redis,Q等等来进行帮助
问题可能存在的位置:1.DB处2.Service处
对于DB处的错误原因可能存在两种分别是:500,以及数据库操作异常
500的原因是:对于项目使用的连接池,出现500大部分的原因是因为访问超时,因为线程池内的线程都被占用,所有再来的任务就需要等待,等待超时的时候就会给客户端访问500,
解决办法:1.升级配置,提高线程池内的线程数 2.进行读写分离,将查询单独进行操作
数据库操作异常:以为大量的任务需要访问数据库,数据库出现了锁表
2.对于service的错误,同样也是500连接超时
原因:对于同一个接口访问的量很大,这样在内存中也会形成一个队列,在队列后面的任务不能执行
解决办法:将一些不需要实时的任务进行异步操作,需要实时的任务进行同步操作整个项目的比例大约是9:1
其中9的异步1的同步,添加一些辅助的软件来进行处理比如redis,Q等等来进行帮助
相关文章推荐
- JPA常用注解
- 开源技术架构 – Web App架构
- 学习从历史开始
- Profiles目录下的文件位置扩展名教程
- Navicat for MySQL 设计报表版面教程
- 开发杂记
- Mybatis 中动态SQL 标签用法
- ios 有如下三种随机数方法:
- iOS常用CGRect的交错,边缘,中心的检测
- AT指令解惑
- os x 10.10 抹盘安装
- 蜂窝教育:好的安卓老师 让学员学的更快
- java thread join
- 【无人机开发】通讯协议MavLink详解
- jQuery源码分析系列(30) : Ajax 整体结构
- PyQt4入门教程(6)_对话框
- dedecms分页样式修改 内容页 上一页 下一页
- Python基础--快速改造:基础知识
- JavaScript 搜罗的问题
- 求子数组元素之和的最大值