java商城开发中的连接池的配置

在对java商城开发以及jsp商城的开发中,连接池的使用以及配置更为重要,为什么会如此说了,下面我们的开发人员就来带大家深入的了解一下java开发过程中的连接池。

数据库每个读写操作需要一个连接,而它的访问流程大概如下:

应用数据层向DataSource请求数据库连接

DataSource使用数据库Driver打开数据库连接

创建数据库连接,打开TCP socket

应用读/写数据库

如果该连接不再需要就关闭连接

关闭socket

容易推断出打开/关闭数据库连接是开销很大的操作。PostgreSQL为每个客户端连接产生一个分离的OS进程,因此高频率地打开/关闭数据库连接会使数据库管理系统压力增大。

重用数据库连接最明显的原因是:
- 减少应用程序和数据库管理系统创建/销毁TCP连接的OS I/O开销
- 减少JVM对象垃圾

使用连接池比不使用连接池快600倍。我们的企业系统包括几十个应用,一个批处理器系统仅仅能够处理每小时大于200万次数据库连接,所以2个数量级的优化是值得考虑的。

无论何时请求一个连接,池数据源会从可用的连接池获取新连接。仅当没有可用的连接而且未达到最大的连接数时连接池将创建新的连接。连接池的close()方法把连接返回到连接池而不是真正地关闭它。

连接池是即将到来的连接请求的有界缓冲区。如果出现瞬间流量尖峰,连接池会平缓这一变化,而不是使所有可用数据库资源趋于饱和。

等待步骤和超时机制是安全钩子(safety hook),防止数据库服务器过载。如果一个应用消耗太多数据库流量,为防止它将数据库服务器压垮(因此影响整个系统),连接池将减少它对数据库的使用。

所有这些优势都是有代价的,连接池配置的额外复杂性增加(尤其是大型企业级系统中)。所以没有银弹,你需要注意很多连接池配置比如:初始化连接数、最小连接数、最大连接数、最大空闲时间、获取连接超时时间、超时重试连接次数 等。

java商城开发中的连接池的配置

时间: 2024-11-04 12:30:47

java商城开发中的连接池的配置的相关文章

java商城开发中说说影响java商城系统和jsp商城效率的原因

java是现在比较流行的软件开发语言,同时也是互联网应用中安全性相对较高的一种开发语言了.被很多的电子金融系统开发企业以及电子商务网站建设企业所看重.虽然说在如今的互联网开发中,它比较有优势,然而用得不当的话,反而会使电子商务网站建设的性能受到影响.电子商务网站建设企业,就从多年的java商城开发中说说影响java商城系统和jsp商城效率的原因. 1.缺乏正确的容量规划 容量规划是一个全面的和发展的过程标准,预测当前和未来的IT环境容量需求.制定合理的容量规划不仅会确保和跟踪当前IT生产能力和稳

Spring中c3p0连接池的配置 及JdbcTemplate的使用 通过XML配置文件注入各种需要对象的操作 来完成数据库添加Add()方法

通过配置文件XML方法的配置 可以使用非常简练的Service类 UserService类代码如下: package com.swift; public class UserService { private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } public boolean add() { return userDao.add(); } } UserService

jsp开发过程中的连接池的作用

在今天利用java做网络编程项目的时候,安全性以及系统的运行速度都是每一个开发者都需要考虑的问题.尤其是在对java商城开发以及jsp商城的开发中,连接池的使用以及配置更为重要,为什么会如此说了,下面我们的开发人员就来带大家深入的了解一下java开发过程中的连接池. 数据库每个读写操作需要一个连接,而它的访问流程大概如下: 应用数据层向DataSource请求数据库连接 DataSource使用数据库Driver打开数据库连接 创建数据库连接,打开TCP socket 应用读/写数据库 如果该连

关于jsp商城开发中一些常用框架的介绍

Struts跟Tomcat.Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使java商城产品以及jsp商城开发者能更深入的了解其内部实现机制.除此之外,在 java商城开发 中Struts的优点主要集中体现在两个方面:Taglib和页面导航.Taglib是Struts的标记库,比较灵活,能大大提高开发效率.另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点.struts历经6年多的发展,是目前用户数最

c3p0数据库连接池 原创: Java之行 Java之行 5月8日 一、连接池概述 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程

c3p0数据库连接池 原创: Java之行 Java之行 5月8日 一.连接池概述 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程 DB连接池HikariCP为什么如此快 原创: DermanYuan 攻城狮DermanYuan 3月19日 1.背景介绍 我们做过的项目中,只要连接数据库,就不可避免的使用数据库连接池,而且面试的时候,数据库肯定会被问到的.说到数据库就会问到连接池,大部分的业务码工,只 原文地址:https://www.cnblogs.com/yuanjiang

redis在Java开发中的连接使用

此贴仅作为本人redis入门学习的笔记记录. redis是什么呢?简单直接点说,就是一个Key-Value类型的数据库.关于它的优缺点,本人暂时没有深入学习和了解,不敢妄言. jedis:redis官方首选的Java客户端开发包. 因为redis是安装在Linux环境下的,所以在使用之前,我们需要做如下准备工作: 1.装虚拟机 2.搭建Linux环境 3.安装redis 4.在Java项目中引入jedis的jar包,并添加到项目的构建路径中 准备工作做好之后,就可以在程序开发中使用redis了.

生产级Nodejs开发实践-使用连接池

引言 做后端开发免不了要和一些 存储服务器, 消息服务器 等等 打交道. 起因 (传统模式, 读取数据库) 大家都知道和这些使用 tcp连接 的服务传递数据的都必须要打开 一个 连接-connection 例如我们打开一个数据库并执行一段 sql, 通常都是 connection = open "mysql://127.0.0.1:3306/db" (打开数据库,并取得持有连接的句柄) data = connection.exec "select * from table1&

java商城开发中设计的数据库处理大量数据的集群开发技术

今天作为java商城开发.java商城产品以及jsp商城开发的技术人员就来说说现在数据库处理大量数据的集群开发技术.集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性.灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术.本文就集群系统的定义.发展趋势.任务调度等问题进行了简要论述. 集群是一组相互独立的.通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理.一个客户与集群相互作用时,集群像是一个独立的服务器.集群配

我们的java商城开发技术人员概括采用分布式开发的原因

在做电子商务网站建设中,java语言要比其他的语言安全性相对要高一些,而且使java商城开发的产品它的跨平台性相比其他语言也要好一点.而且java在开发jsp商城网站中还有一个优势,那就是可以采用一些开发技术来提高网站的运行速度,这个技术就是现在很多开发企业比较看重的分布式开发. 在介绍分布式开发的时候,我们先来一段插曲,那就是关于火车站的售票系统的开发.在12306.cn网站刚刚开通网上售票功能的时候,我们会发现,在买票的时候经常出现网站崩溃或是服务器无响应或是网站进不去等等问题,这个就是在开