Hikari是我自定义的数据库连接池,前面已经提供了地址。因为c#的连接池按照规范的ADO.NET里面实现定义的。由数据库官方提供,但是实现方式就不知道了,反正没有看出来,估计一般是连接类实现的,但是没有看出来怎么使用的。

对其升级重构:

重新设计缓存池,消除锁,使用安全栈,提升性能。所有的设置均采用状态,只是在获取的时间才真实关闭,同时根据配置,监视使用情况,部分解决外部使用失误,没有回收的情况。很多内容设置移动到缓存池中设置,并且是使用时设置,真正关闭连接也是。

根据我们使用的习惯,自定义了一个数据库连接池,HikariDataSource作为对外的类,提供连接对象,其实是自己定义的。HikariConfig类是配置类,支持文件配置加载,配置文件只要是文本就可以了。其实HikariDataSource继承了HikariConfig,所以从使用上,HikariDataSource类可以支持设置或者加载配置,但是我不建议,我推荐的用法是:

HikariConfig hikariConfig = new HikariConfig();
hikariConfig.LoadConfig("Hikari.txt");
HikariDataSource hikariDataSource = new HikariDataSource(hikariConfig);
使用
var connection = hikariDataSource.GetConnection();
if (connection != null)
                    {
                        var cmd = connection.CreateCommand();
                        cmd.CommandText = "select * from student";
                        var rd = cmd.ExecuteReader();
                        int datanum = 0;
                        string data = "";
                        while (rd.Read())
                        {
                            data+="ID:"+rd.GetInt32(0);
                            data+=",Name:"+ rd.GetString(1);
                            Console.WriteLine(data);
                            datanum++;
                        }
                        rd.Close();
                        cmd.Dispose();
                        connection.Close();//这里是回收缓存,否则就会长时间没有连接可用,直到达到设置的使用时间
                    }

数据库连接池于2018-12-13再次升级。

不好意思,该类库继续升级完善 2018-12-31继续升级

c#数据库连接池Hikari重构升级的更多相关文章

  1. c#数据库连接池

    因为使用习惯的问题,我封装了一个数据库连接池Hikari,这是我自定义的数据库连接池.因为c#的连接池按照规范的ADO.NET里面实现定义的,由数据库官方提供,但是实现方式就不知道了,反正没有看出来, ...

  2. 主流数据库连接池性能比较 hikari druid c3p0 dbcp jdbc

    背景 对现有的数据库连接池做调研对比,综合性能,可靠性,稳定性,扩展性等因素选出推荐出最优的数据库连接池 . NOTE: 本文所有测试均是MySQL库 测试结论 1:性能方面 hikariCP> ...

  3. 数据库连接池性能比对(hikari druid c3p0 dbcp jdbc)

    https://blog.csdn.net/qq_31125793/article/details/51241943 背景 对现有的数据库连接池做调研对比,综合性能,可靠性,稳定性,扩展性等因素选出推 ...

  4. 项目重构之数据源配置与优化:log4j 配置数据库连接池Druid,并实现日志存储到数据库

    作者:泥沙砖瓦浆木匠网站:http://blog.csdn.net/jeffli1993个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节. 交流QQ群:[编程之美 365234583] ...

  5. 主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)

    主流数据库连接池 常用的主流开源数据库连接池有C3P0.DBCP.Tomcat Jdbc Pool.BoneCP.Druid等 C3p0: 开源的JDBC连接池,实现了数据源和JNDI绑定,支持JDB ...

  6. SpringBoot:关于默认连接池Hikari的源码剖析

    1.起因 因为这两天在给公司的一个项目升级SpringBoot版本,遇到了一些坑,升级项目版本:SpringBoot1.5.x到SpringBoot2.0.x 今天早上双库操作遇到一个问题:jdbcU ...

  7. <十四>JDBC_c3p0数据库连接池

    配置文件:c3p0-config.xml <!-- Hibernate官方推荐使用的数据库连接池即c3p0;dbcp是Tomcat在数据源中使用 --><c3p0-config> ...

  8. 为什么HikariCP被号称为性能最好的Java数据库连接池,怎样配置使用

    HiKariCP是数据库连接池的一个后起之秀.号称性能最好.能够完美地PK掉其它连接池. 原文地址:http://blog.csdn.net/clementad/article/details/469 ...

  9. Spring Boot 数据库连接池 HikariCP

    简介 HikariCP 来源于日语,「光」的意思,意味着它很快!可靠的数据源,spring boot2.0 已经将 HikariCP 做为了默认的数据源链接池. 官网详细地说明了HikariCP所做的 ...

随机推荐

  1. MongoDB windows基础配置及集群搭建

    由于公司业务的发展MSSQL已处于瓶颈.因为没钱买牛逼服务器只能靠软件来实现最大优化了.原来的系统架构如下图:

  2. 使用vue-router切换页面时,获取上一页url以及当前页面url

    今天在实现一个小功能的时候,遇到一个问题,使用vue-router获取上一页面的url信息,我尝试了多种方式,发现使用vue-router的canDeactivate钩子实现这个功能最为方便,现在将我 ...

  3. 自己用到的vim常用命令

    一.前言 这里整理的是我在实习期间用到的常用vim命令,特记录如下,以免忘记. 二.vim常用命令 1.vim中的光标移动 shift+6(^):跳到行首(第一个非空格字符)(注:在shell跳到行首 ...

  4. js之strict模式

    JavaScript在设计之初,为了方便初学者学习,并不强制要求用var申明变量.这个设计错误带来了严重的后果:如果一个变量没有通过var申明就被使用,那么该变量就自动被申明为全局变量: i = 10 ...

  5. 重构指南 - 移除重复内容(Remove Duplication)

    在项目中或多或少的都存在着重复的或者功能相似的代码,如果要对代码做改动,就要修改多个地方,所以我们需要将多处重复的代码提取到一个公共的地方供统一调用,以减少代码量,提高代码可维护性. 重构前代码 pu ...

  6. js匿名函数使用&传参

    function () { alert("error"); } //报错:匿名函数不能直接调用 使用 0x01 (function () { alert("Success ...

  7. Java将科学计数法数据转为字符串

    如果Excel单元格数据类型为数值,数字太长会变成科学计数法,Java读取的时候使用如下方法可将其转为字符串 BigDecimal bd = new BigDecimal("3.000085 ...

  8. Intent的简单使用

    主要实现Intent之间值得转递,如从AActivity到BActivity之间传一个数值,一个实体类,一个集合类 下面代码只要是实现对startActivityForResult的使用,用ABC 3 ...

  9. Apache转发到Tomcat

    #vi /etc/httpd/conf/httpd.conf 添加下面配置 NameVirtualHost *:80 <VirtualHost *:80>ProxyPreserveHost ...

  10. Network Embedding 论文小览

    Network Embedding 论文小览 转自:http://blog.csdn.net/Dark_Scope/article/details/74279582,感谢分享! 自从word2vec横 ...