- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《计算机通信与网络编程》 第八讲 服务器并发性的统一、高效管理 电子科技大学计算机学院 服务器并发性的统一、高效管理 目的: 设计更灵活、性能更优化的并发服务器。 2. 困难: 设计所依赖的条件在不断变化,而我们只能依 靠经验来做出判断。 并发等级 定义:服务器整个生命期中,同时并发的最大线程数量。该参数某种意义上代表了该服务器的最大资源开销。 我们可以限制服务器的最大并发数量,也可以不限制(允许创建任意多的线程),此时该服务器的并发等级受限于操作系统的限制。 16.4 需求驱动的并发 当收到远程连接请求时触发线程创建,此时服务器的并发等级依赖于客户的需求。(同时存在的连接越多,并发等级越高) 16.5 并发的代价 需求驱动虽然能够提供动态的灵活性并提供较小的时延,但是并不一定是最优化的。因为并发是有代价的。 16.6 额外开销和时延 在需求驱动模式下,任一时刻的并发等级反映了当时服务器已收到但还没有处理完毕的请求数目。 线程的创建是有开销的。而该开销相对来说是昂贵的。(进程创建和进程切换都是有开销的) 这个开销一方面会带来处理的时延,另一方面会消耗系统资源。 16.7 小时延可能出麻烦 当创建线程的开销大于处理单个连接请求的开销时,会出现新的问题。 假设创建线程的时间开销为c、处理请求的时间开销为p。 16.7 小时延可能出麻烦 从上图可以看出,当pc时,并发方式处理单个请求的时间开销为p+c,处理两个请求的时间开销为2c+p,处理n个请求所花费的时间开销为nc+p.平均处理单个请求的时间为c+p/n。 循环方式下处理单个请求的时间为p处理n个请求的时间为np,平均处理单个请求的时间为p。 16.7 小时延可能出麻烦 在上面的例子里,循环服务器反而能够提供更快的响应速度和更高的处理效率。 当若干个请求几乎同时到达时,服务器只能对其中一个请求进行处理,其余的请求只能在TCP协议队列中排队等待。 如果服务器处理的速率要慢于新请求到达的速率的话,等待队列将不断增大,直至充满,此时我们所最不希望出现的事件发生了, 连接被拒绝! 16.7 小时延可能出麻烦 在上面的例子中,如果请求到达的速率超过1/c时,并发服务器将会拒绝连接,超过1/p时循环服务器将拒绝连接。但速率1/c而小于1/p时,并发设计出现问题而循环方式仍然正常运行。 从上面的分析中我们得出的结论是: 重负荷的服务器要提供最佳响应的话,不适合采用需并发的设计方案。 16.8 从进程/进程预分配 为了增加重负荷服务器的承载能力,我们应着重减少其平均单个请求的处理平均时间。也就是说要设法减少c+p/n。 p取决于服务所执行的功能操作和cpu的处理能力,对p的减少是非常有限的,同时当n-∞时p/n-0。c是系统创建线程的开销,从某种程度上讲是定值,无法减少。因此我们的改进应该从减少线程创建的次数着手,使得平均每次请求处理所分摊的线程创建开销随着n的增加而减少。 16.8 从线程/进程预分配 在服务器开始执行时就创建N个从线程/进程, 将所接受的新的请求分配给这N个从线程/进程中的一个处理,从全局来看,每个从线程/进程只创建一次,处理n个请求所花费的平均线程开销为NC/n。 16.8 从线程/进程预分配 新产生的问题: 由于从线程/进程在服务存活期间始终活跃,并不退出,其所分配的内存等资源将不会自动释放,因此在此种设计方案中从线程程序中要特别注意对内存等资源的分配和释放。 16.8.2 面向连接服务器中的预分配 使用互斥我们可以使多个进程同时阻塞在一个socket的accept事件上,当有连接到达时,系统只会唤醒一个从进程。该从进程处理完连接后会继续调用accept等待下一连接到达。 请思考: 这种处理方式在什么情况下带来好处,是否能解决所有可能的问题? 16.8.3互斥、文件锁定和accept并发调用 有些操作系统并不能自动为多个进
您可能关注的文档
- 肠外营养支持导论.ppt
- 贝塔斯曼在中国--phil选读.ppt
- 贝叶斯算法文本分类选读.ppt
- LICENSE授权操作指引选读.ppt
- 贝叶斯信念网络选读.ppt
- SN10-10型高压少油断路器检修选读.ppt
- Linux操作系统-第1讲Linux系统简介选读.ppt
- 常规水电厂和抽水蓄能电厂运作原理及主要机电设备导论.ppt
- 第二章紫外吸收光谱导论.ppt
- 第二章租赁会计导论.ppt
- 上海海洋大学《海洋环境分析技术》课件-21化学发光分析法.pdf
- 上海海洋大学《海洋环境分析技术》课件-20分子荧光分析法.pdf
- 上海海洋大学《海洋环境分析技术》课件-22色谱分离过程.pdf
- 上海海洋大学《海洋环境分析技术》课件-25气相色谱仪与固定液.pdf
- 上海海洋大学《海洋环境分析技术》课件-24色谱定性定量方法.pdf
- 上海海洋大学《海洋环境分析技术》课件-26气相色谱检测器.pdf
- 上海海洋大学《海洋环境分析技术》课件-29液相色谱固定相与流动相.pdf
- 上海海洋大学《海洋环境分析技术》课件-27气相色谱分离条件的选择.pdf
- 上海海洋大学《海洋环境分析技术》课件-28液相色谱仪器与类型.pdf
- 上海海洋大学《海洋环境分析技术》课件-3 原子光谱和分析光谱.pdf
文档评论(0)