暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBASE分享一个连接缓冲池技术

郑小雯 2023-09-22
105

一般 J2EE 连接池概念

连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需 要它们的线程使用。 这种把连接汇集起来的技术基于这样的一个事实:对于大多数应用程序, 当它们正在处理通常需要数毫秒完成的事务时,仅需要能够访问 JDBC 连接的 1 个线程。当不处理事务时,这个连接就会闲置。相反,连接池允许闲置的连接 被其它需要的线程使用。 事实上,当一个线程需要用 JDBC 对一个 GBase 或其它数据库操作时,它从 连接池中请求一个连接。当这个线程使用完了这个连接,将它返回到连接池中, 这样这就可以被其它想使用它的线程使用。 当连接从池中借出,它被请求它的线程专有地使用。从编程的角度来看, 这和用户的线程每当需要一个 JDBC 连接的时候调用 DriverManager.getConnection()是一样的,采用连接池技术,可通过使用新的 或已有的连接结束线程。 连接池可以极大的改善用户的 Java 应用程序的性能,同时减少全部资源的 使用。连接池主要的优点有:

 减少连接创建时间 虽然与其它数据库相比 GBase 提供了较为快速的连接功能,但是创建新的 JDBC 连接仍会招致网络和 JDBC 驱动的开销。如果这类连接是“循环”使用的, 那么使用该方式造成的这些花销就可避免。

 简化的编程模式 当使用连接池时,每一个单独的线程能够像创建了一个自己的 JDBC 连接一 样操作,允许用户直接使用 JDBC 编程技术。

 受控的资源使用 如果用户不使用连接池,而是每当线程需要时创建一个新的连接,那么用 户的应用程序的资源使用会产生非常大的浪费并由可能会导致高负载下的异常 发生。 注意:每个连到 GBase 的连接在客户端和服务器端都有花销(内存,CPU, 上下文切换等等)。每个连接均会对应用程序和 GBase 服务器的可用资源带来一 定的限制。不管这些连接是否在做有用的工作,仍将使用这些资源中的相当一 部分。 连接池能够使性能最大化,同时还能将资源利用控制在一定的水平之下, 如果超过该水平,应用程序将崩溃而不仅仅是变慢。 幸运的是,Sun 已经通过 JDBC-2.0 可选的接口,标准化了 JDBC 中的连接 池的概念,并且所有的主流应用服务基本都实现了与 GBase JDBC 一起良好工作 的这类 API。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论