
public ResultSet SQL_ExecuteQuery(String sql,Object [] p){
Connection con=openConnection()//打开数据库
PreparedStatement pst=null//定义一个 执行对象
try {
pst=con.prepareStatement(sql)//初始化执行对象
//循环设置参数
if(p!=null && p.length>0){
for (int i = 0 i < p.length i++) {
pst.setObject((i+1), p[i])//设置参数
}
}
//最后执行命令 并返回结果
return pst.executeQuery()//执行命令
} catch (SQLException e) {
e.printStackTrace()
}finally{
try{pst.close()}catch(SQLException ex){}
try{con.close()}catch(SQLException ex){}
}
return null
}
百度搞得乱乱的,,,,,
这是关于php进阶到架构之 swoole 系列学习课程:第三节:mysql连接池
学习目标 :
了解什么是mysql连接池,以及mysql使用场景。能在实际工作使用连接池(数据库连接池,redis连接池等等)解决高并发带来的问题。
场景 :
每秒同时1000个并发,但mysql数据库同时只支持400个连接,这样mysql就会宕机
解决方案 :
使用连接池,这个连接池建立了300个与mysql的连接对象,这1000个并发有序地共享连接池里的300个连接。
连接池的使用不但解决了mysql在高并发情况下宕机问题,还额外提高了性能。因为和mysql建立连接,消耗较大。使用连接池只需要连接一次mysql。
永不断开,需要程序常驻内存,这就需要借助swoole实现。
数据库连接池是程序启动时,建立足够的数据库连接,并将这些连接组成一个连接。由程序动态的对连接池中的连接进行申请,使用,释放和回补。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)