系统并发访问效率问题
来源:互联网 发布:二维向量旋转矩阵 编辑:程序博客网 时间:2024/05/20 00:16
当大量“客户”同时访问一个“服务器”时,“服务器”面临的是大并发访问的技术和架构问题。大并发访问的等级可以分为“超出连接”、“超出时限”和“超出应用负载”三种。
2.1超出连接
当客户的连接超出数据库的连接数或并发处理能力,当时没有超出服务器的瞬间处理能力,可以采用“访问队列”进行排队。提高用户体验。
比如,数据库的并行处理是10访问请求,“瞬间处理能力”为2秒中内处理1000个请求。当最大并发客户访问请求是1000个,如果不加队列,将有1000-10=990个客户请求失败。如果应用“访问队列”,在不到2秒的瞬间,数据库处理完毕这1000个访问请求。全部客户体验良好。
所以,当并发量超出并发处理能力,而在瞬间处理范围内时,“访问队列服务”是有效的方法。
2.2超出时限
同样是并行处理能力是10个访问,2秒可以处理1000个请求,当最大并发客户访问请求是10000个时,会出现等待10秒到20秒的请求。设客户端可以容许的超时为4秒。则需要新的手段提高服务器的瞬间处理能力。
由于数据库系统的并行处理能力比较低,相同的运算在数据库系统中比在操作系统中要慢。所以将可以分离出的运算程序由数据库移出,在“访问队列服务”层执行,将会大大提供整个服务器的处理能力。
承担了访问队列管理和一部分业务运算功能的中间服务,称为“应用服务”。
2.3超出应用负载
如果承担了大量的业务运算功能的“应用服务”的处理能力成为系统效率的瓶颈,即队列压力超出“应用服务”的处理能力,则需要将“应用服务”进行扩展。
扩展的方法是在不同的设备上同时启动应用服务,形成一个“应用服务群”,多个服务分担业务处理请求,并保证每个“应用服务”有充足的系统资源。- 系统并发访问效率问题
- db2 数据库访问系统并发问题Reason code = -2029060029
- 事务并发访问问题
- 如何提高数据库系统访问效率[转帖]
- 如何提高数据库系统访问效率[转帖]
- web并发访问的问题
- 高并发访问数据库问题
- 高并发访问数据库问题
- c++ 迭代器与下标访问效率问题
- 系统高并发问题处理
- String,只读,多线程并发访问,没有问题
- Spring并发访问的线程安全性问题
- 关于线程并发访问全局变量问题
- SpringMVC并发访问的线程安全性问题
- 并发问题:大数据量的访问
- 并发问题:大数据量的访问
- Spring并发访问的线程安全性问题
- java多线程并发访问问题及控制
- 关于stm32的MY_NVIC_Init()中断管理函数的使用心得!
- 心动C++情牵汉洛塔
- 线程安全和线程不安全
- centos 配置虚拟主机
- Android通过HttpURLConnection与HttpClient联网代理网关设置
- 系统并发访问效率问题
- android操作xml
- 让你的程序可以执行脚本并和脚本实现交互
- css
- 进程与线程
- ConfigParser
- LRU缓存介绍与实现 (Java)
- 中国剩余定理(韩信点兵)POJ1006
- CSS里的各种水平垂直居中基础写法心得分享(附内联元素,块级元素的基本概念)