WebSphere--连接管理器
连接管理器使您可以控制并减少由 Web 应用程序使用的资源。相对于非 Web 应用程序,基于 Web 的应用程序对数据服务器的访问会导致更高的和不可预料的系统开销,这是由于 Web 用户更为频繁的连接和断开。通常连接与断开连接所用的资源大于交互所用的资源。由于 Internet 的“冲浪”性质,用户的交互过程一般都较短。通常,公司外(Internet,而非 intranet)的用户会将使用卷变得很大,并难以预料。连接管理器通过建立用户
Servlet 可用的连接缓冲池将连接的系统开销分摊给多个用户请求。换言之,每个用户请求仅占用连接/断开连接所用系统开销成本的一小部分。在使用初始资源建立缓冲池中的连接后,其余连接/断开连接所用的系统开销就不大了,因为这只是重复使用已有的连接而已。
Servlet 以如下方式使用连接缓冲池:当一个用户通过 Web 向 Servlet 请求时, Servlet 从缓冲池使用一个已有的连接,这意味着用户请求不会引起数据服务器的连接系统开销。当满足请求时,Servlet 将连接返回至连接管理器缓冲池供其它 Servlet 使用。因而用户请求不会引起数据服务器的断开连接的系统开销。
连接管理器还使您能控制到数据服务器产品的并发连接数。当数据服务器的许可证协议限定用户数量时,这一特性是非常有用的。可以为数据服务器创建一个缓冲池,并将连接管理器缓冲池的“最多连接数”参数设成数据服务器产品许可证中限定的最大用户数。如果用其它程序而不用连接管理器连接到数据服务器,则不能保证该方法有效。
- 1. 连接管理器结构
连接管理器维护一个连接到特定数据服务器产品处于打开状态的数据服务器缓冲池。每个数据服务器可以有一个或多个等同的或非等同的缓冲池。连接管理器的一个运行实例可以支持多个数据服务器。图6-1说明了在连接管理器与一个正在连接管理器的连接缓冲池中寻找可使用的连接的 Servlet 之间的典型交互作用。
(1) 当第一个 Servlet 试图与连接管理器通信时,由WebSphere应用服务器装入运行在WebSphere应用服务器下的连接管理器。只要WebSphere应用服务器在运行,连接管理器就一直被装入。
(2) WebSphere应用服务器将用户请求传递给一个 Servlet。
(3) Servlet 用连接管理器使用的方法从缓冲池中请求一个连接。
(4) 缓冲池给 Servlet 分配一个连接。
(5) Servlet 使用连接与数据服务器直接对话,这一过程中使用的是特定数据服务器的标准 API。
(6) 数据服务器通过与 Servlet 的连接返回数据。
(7) 当 Servlet 结束与数据服务器通信时,Servlet 把连接归还给连接管理器缓冲池,以供其它
Servlet 使用。
(8) Servlet 通过WebSphere应用服务器向用户发回响应。
在 Servlet 请求一个连接时,缓冲池中不一定有可用的连接。在这种情况下,连接管理器直接与数据服务器通信。连接管理器将:
l 请求一个新的连接
l 将连接添加到缓冲池中。如果缓冲池中的连接数达到了规定的上限,连接服务器将不会把新的连接加入缓冲池中。
l 将新的连接交给 Servlet。
- 2.性能特性
为缓冲池创建一个新的连接是一项系统开销很高的任务,新的连接将使用数据服务器上的资源。因此连接管理器尽量用缓冲池中的现有连接来满足 Servlet 的请求。 同时,连接管理器必须尽可能地最小化缓冲池中的空闲连接,因为这是对系统资源的极大浪费。连接管理器与 Servlet 一同执行这些最小化和最大化任务。对于可选的性能,请适当地设置连接管理器参数。
连接管理器维护每个连接的验证时间标记、最近使用时间标记和正在使用标志。当某个 Servlet 第一次获得连接时,连接的验证时间标记和最近使用时间标记被设置为当前时间,连接的正在使用标志则被设置为真。
可将连接服务器配置成从某个 Servlet 中移走一个长时间未使用的连接。这个时间长度是由连接管理器的 “最长周期”参数指定的。如果 Servlet 准备在较长一段时期内使用连接与数据服务器多次通信,可能希望将代码加入 Servlet 中,以便在每次使用连接之前,确认它仍占有这个连接。连接管理器从缓冲池中除去空闲的连接,因为它们会浪费资源。为了确定哪个连接是空闲的,连接管理器将检查连接标志和时间标记,这个操作是通过周期性地获取连接缓冲池信息来实现的:
(1) 连接管理器查看正在使用连接的最近使用时间标记。如果最近使用时间和当前时间之间的时间差大于“最长周期” 配置参数,则本连接将被认为是一个残留连接,这就表明占有它的 Servlet 已终止或者没有响应。残留连接将被归还给缓冲池以供其它 Servlet 使用,它的正在使用标志被设置为假,且验证和最近使用时间标记被设置为当前时间。
(2) 连接管理器检查未被任何 Servlet 使用的连接(这些连接的正在使用标志为假)。如果最近使用时间与当前时间的时间差超过了“最长空闲时间”配置参数,将认为本连接是空闲的。空闲连接将被从缓冲池中除去,降至“最少连接数”配置参数指定的较低限定值。
- 3.监控连接管理器
WebSphere应用服务器管理器为名为数据库缓冲池连接的连接管理器提供了一个监控程序。可以使用这些信息来查看如何执行连接缓冲池,并建议对连接缓冲池参数进行可能的更改。可以在更改参数之后对缓冲池执行监控,从而查看缓冲池特性的更改并帮助进一步对缓冲池参数进行调整。可以选择特定缓冲池,以从选择列表中对其进行监控。
WebSphere--连接管理器的更多相关文章
- 在SSIS 的 64 位版本中不支持 Excel 连接管理器
Microsoft sql server 2008 R2——> SQL SERVER Business Intelligence Development Studio 使用EXCEL数据源或目标 ...
- SOFA 源码分析 — 连接管理器
前言 RPC 框架需要维护客户端和服务端的连接,通常是一个客户端对应多个服务端,而客户端看到的是接口,并不是服务端的地址,服务端地址对于客户端来讲是透明的. 那么,如何实现这样一个 RPC 框架的网络 ...
- httpclient 连接管理器
连接操作器 连接操作是客户端的底层套接字或可以通过外部实体,通常称为连接操作的被操作的状态的连接. OperatedClientConnection接口扩展了HttpClientConnection接 ...
- SSIS包的组建之连接管理器
上一篇我们通过一个示例来介绍一下SSIS 包的开发.接下来的内容我们将学习一下包中各个选项卡的使用.如:连接管理器选项卡.控制流选项卡.数据流选项卡和事件处理选项卡等等.这一篇将介绍一下连接管理器作用 ...
- 在SSIS 的 64 位版本中不支持 Excel 连接管理器[转]
Microsoft sql server 2008 R2——> SQL SERVER Business Intelligence Development Studio 使用EXCEL数据源或目标 ...
- openfire研究之部署连接管理器(connection manager)
http://blog.sina.com.cn/s/blog_7325f5150101bafh.html 一. Openfire Connection Manager 简介 Openfire Conn ...
- 转-HttpClient4.3 连接管理
转 http://www.yeetrack.com/?p=782 2.1.持久连接 两个主机建立连接的过程是很复杂的一个过程,涉及到多个数据包的交换,并且也很耗时间.Http连接需要的三次握手开销很大 ...
- HttpClient4.3教程 第二章 连接管理
2.1.持久连接 两个主机建立连接的过程是很复杂的一个过程,涉及到多个数据包的交换,并且也很耗时间.Http连接需要的三次握手开销很大,这一开销对于比较小的http消息来说更大.但是如果我们直接使用已 ...
- HttpClient-02连接管理
2.1.持久连接 两个主机建立连接的过程是很复杂的一个过程,涉及到多个数据包的交换,并且也很耗时间.Http连接需要的三次握手开销很大,这一开销对于比较小的http消息来说更大.但是如果我们直接使用已 ...
随机推荐
- 易卡易APP的出现改变你的消费习惯
科技发展越来越快,移动支付占据市场主导地位,银行业发展受到了重大冲击,致使银行对于信用卡的推广更加重视.人们的消费观念也受到了很大影响从以前的现金消费变成现在的数字消费,人们对于金钱的观念就是一个数字 ...
- .NET使用Office Open XML导出超大数量数据到 Excel
我相信很多人在做项目的都碰到过Excel数据导出的需求,我从最开始使用最原始的HTML拼接(将需要导出的数据拼接成TABLE标签)到后来happy的使用开源的NPOI, EPPlus等开源组件导出EX ...
- 常用OJ名字+地址(自用)
常用OJ名字+地址 不定期更新,自己用,有补充的也可以给我说说哈. 中文 openjudge 地址:openjudge.cn 说明:北大提供的一个平台,学校可申请小组: 比较好的小组: 计算概论:ic ...
- 最长递减子序列(nlogn)(个人模版)
最长递减子序列(nlogn): int find(int n,int key) { ; int right=n; while(left<=right) { ; if(res[mid]>ke ...
- Gym 100952E&&2015 HIAST Collegiate Programming Contest E. Arrange Teams【DFS+剪枝】
E. Arrange Teams time limit per test:2 seconds memory limit per test:64 megabytes input:standard inp ...
- Codeforces Round #332 (Div. 2)_B. Spongebob and Joke
B. Spongebob and Joke time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
- 为了解决linux配置Nginx 只能关闭防火墙才能访问的问题
使用Nginx和iptables做访问权限控制(IP和MAC) 之前配置的服务器,相当于对整个内网都是公开的,而且,除了可以通过80端口的nginx来间接访问各项服务,也可以绕过nginx,直 ...
- 把VueThink整合到已有ThinkPHP 5.0项目中
享 关键字: VueThink ThinkPHP5.0 Vue2.x TP5 管理后台扩展 VueThink初认识 VueThink,是一个很不错的技术框架,由广州洪睿科技的技术团队2016年研发( ...
- vi的常用命令
https://zhidao.baidu.com/question/332242228.html vi的基本操作 a) 进入vi 在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面: $ v ...
- ajax_表单提交+tp5ajax
======================================================= 判断squery导入的是否正确? $(function(){ alert('1'); } ...