常用Java数据库连接池有哪些特点及优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2222个文字,预计阅读时间需要9分钟。
概述:所说的数据库连接是指通过网络协议与数据库服务之间建立的TCP连接。
内容:通常,与数据库服务通信的网络协议无需由应用程序本身实现,原因有三:
1. 实现复杂度高,需要处理网络通信的多个层面;
2.需要考虑安全性,如数据加密和身份验证;
3.便于维护和升级,降低应用程序的维护成本。
概述
在这里所谓的数据库连接是指通过网络协议与数据库服务之间建立的TCP连接。通常,与数据库服务进行通信的网络协议无需由应用程序本身实现,原因有三:
1.实现复杂度大,需要充分理解和掌握相应的通信协议。
2.代码难以复用,每个应用程序都需要独立实现一套对应的网络协议(不同公司之间,同一公司的不同技术栈之间难以复用实现相同协议的代码)
3.性能难以保证,不同的网络协议实现可能存在巨大的性能差距
正因为如此,所以现实的实现方式是:
首先,定义网络协议标准,这样只要支持这个标准协议的数据库就可以使用相应的客户端与之通信。
其次,将实现这个标准协议的客户端独立为一个通信库,这样只需要在应用程序中使用这个通信组件库就可以方便地实现与数据库进行交互。
通常,我们将实现了网络协议的通信库称之为数据库驱动程序。当然,对于不同的编程语言,需要对应编写相应的数据库驱动
实现。以与关系型数据库通信为例,在Java中实现的驱动程序为JDBC,Python中的驱动程序为MySQLdb。
由于通过TCP与数据库建立网络连接的代价非常高昂,而且耗时(TCP建立连接需要“三次握手”,断开连接需要“四次握手”)。
本文共计2222个文字,预计阅读时间需要9分钟。
概述:所说的数据库连接是指通过网络协议与数据库服务之间建立的TCP连接。
内容:通常,与数据库服务通信的网络协议无需由应用程序本身实现,原因有三:
1. 实现复杂度高,需要处理网络通信的多个层面;
2.需要考虑安全性,如数据加密和身份验证;
3.便于维护和升级,降低应用程序的维护成本。
概述
在这里所谓的数据库连接是指通过网络协议与数据库服务之间建立的TCP连接。通常,与数据库服务进行通信的网络协议无需由应用程序本身实现,原因有三:
1.实现复杂度大,需要充分理解和掌握相应的通信协议。
2.代码难以复用,每个应用程序都需要独立实现一套对应的网络协议(不同公司之间,同一公司的不同技术栈之间难以复用实现相同协议的代码)
3.性能难以保证,不同的网络协议实现可能存在巨大的性能差距
正因为如此,所以现实的实现方式是:
首先,定义网络协议标准,这样只要支持这个标准协议的数据库就可以使用相应的客户端与之通信。
其次,将实现这个标准协议的客户端独立为一个通信库,这样只需要在应用程序中使用这个通信组件库就可以方便地实现与数据库进行交互。
通常,我们将实现了网络协议的通信库称之为数据库驱动程序。当然,对于不同的编程语言,需要对应编写相应的数据库驱动
实现。以与关系型数据库通信为例,在Java中实现的驱动程序为JDBC,Python中的驱动程序为MySQLdb。
由于通过TCP与数据库建立网络连接的代价非常高昂,而且耗时(TCP建立连接需要“三次握手”,断开连接需要“四次握手”)。

