为什么数据库连接的创建开销大

WBOY
풀어 주다: 2016-06-07 15:48:23
원래의
1705명이 탐색했습니다.

为什么连接开销比较大? 开发人员经常认为建立一个数据库是一个简单的要求,不就是在数据库服务器和初始化用户之间的一个网络往返吗,但实际上,一个数据库连接在驱动和数据库服务器之间有多次网络往返,例如,当某个驱动连接到Oracle或Sybase时,这个连接会

为什么连接开销比较大?

开发人员经常认为建立一个数据库是一个简单的要求,不就是在数据库服务器和初始化用户之间的一个网络往返吗,但实际上,一个数据库连接在驱动和数据库服务器之间有多次网络往返,例如,当某个驱动连接到Oracle或Sybase时,这个连接会有7到10和网络往返,执行了一系列的动作:

◆校验用户的身份证书

◆在数据库驱动期望的代码页设置和数据库可用的代码页设置之间进行协商(如果必要的话)

◆获取数据库版本信息

◆确定用于通信的最理想的数据库协议包大小

◆设置会话设置

此外,数据库管理(开发人员承担数据库管理员职责时的最佳做法)系统要确定建立连接使用的资源,包括性能开销较大的磁盘I/O和内存分配,你可能会认为将应用程序部署到数据库服务器上会消除网络往返,在大多数情况下这并不现实,因为现实世界中大部分企业并不会这么干,它们有很多的应用程序,有很多的数据库,此外,数据库服务器都会为数据库系统进行精心的性能调整,一般不会为不同的应用程序进行调整,即使可以在一台机器上安装数据库和应用程序,但这样也会有单点故障的隐患。



摘自:http://database.51cto.com/art/200907/136845.htm

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!