专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » oracle数据库连接:建立与Oracle数据库服务器连接的两种连接模式 »正文

oracle数据库连接:建立与Oracle数据库服务器连接的两种连接模式

来源: 发布时间:星期四, 2008年12月11日 浏览:255次 评论:0
="t18"> 在建立Oracle数据库时候应该会在数据库建立助手向导上面看到这么个选项就是数据库连接模式采用什么方式在Oracle9i或者10g中可以看到有2种连接模式种叫做专用服务器连接(dedicated server) 另外种叫做共享服务器连接(shared server)下面我们来分类说下这两种连接方式不同点 专用服务器模式就是说每次在对Oracle进行访问时候Oracle服务器Listener会得到这个访问请求然后回为这个访问创建个新进程来进行服务所以说对于每个客户端访问都会生成个新进程进行服务种类似映射关系这种连接模式个很重要特点就是UGA(用户全局域)是存储在PGA(进程全局域)中这个特性也很好说明了当前用户内存空间是按照进程来进行分配 而另外共享服务器连接则是种在编写时候通常会用到连接池(pool)概念采用这种模式在数据库时候就会创建批服务器连接进程然后把这些连接进程放入个连接池来进行治理池中进程数量在数据库化建立时候是可以手动设置在连接建立时候Listener首先接受到客户端建立连接请求然后Listener去生成个叫做调度器(dipatcher)进程与客户端进行连接调度器把把客户端请求放在SGA(系统全局域)个请求队列中然后再共享服务器连接池中查找有无空闲连接然后让这个空闲服务器进行处理处理完毕以后再把处理结果放在SGA相应队列中调度器通过查询相应队列得到返回结果再返回给客户端这种连接模式优点在于服务器进程数量可以得到控制不大可能出现连接人数过多而造成服务器内存崩溃但是由于增加了复杂度以及请求相应队列可能性能上有所下降 总之谈到两种连接方式优点和缺点是各有千秋在专用服务器模式下优点就是每个用户都有个连接所以大家不至于有应用占着连接造成别客户请求给挂起了而最大缺点在于内存治理上随着连接数增加每增加个连接就要分配份PGA假如增加10000个连接那就是10000个PGA要提供内存很轻易吃爆掉而共享连接方式优点在于连接数量固定所以内存数量不会占用很多不过在数据库时候共享服务器就要化好比如有100个共享服务器由于共享连接模式下UGA是分配在PGA中所以时候需要化比较多内存也就是那100个UGA内存另外共享服务器还有个优点就是很多数据库高级连接特性都要求使用共享服务器所以有时候为了使用这些特性迫不得已只好设定为共享服务器连接模式共享服务器最大缺点还是在于数据仓库模式下运行时候假如有大量请求需要长时间占用服务器那么就会造成很多别请求挂起导致整个服务器性能降低另外在有些应用服务器提供了连接池时候比如J2EE中经常有应用服务器连接池比如Weblogic还有开源DBCP以及C3P0等等在有这些连接池时候共享服务器对于性能上反而造成了累赘另外有时候在使用共享服务器时候由于数据事务处理不及时而占住服务器进程试图锁定前面事务没有处理数据会造成数据库死锁非凡是假如没有设定连接锁定超时只能通过DBA上数据库杀进程方式来解决了不过也有这种最佳方案那就是混合模式也就是对于同个数据库服务器既有专用服务器也有共享服务器共享服务器用来处理那种事务性很强而专用服务器用来对付那些比较耗时间和资源请求当然也要看到时候实际情况如何再做决定两者没有绝对哪种好哪种不好差别

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: