1.ADO.NET 函数用法
Open() 连接数据库连接池
Close ()方法回滚任何挂起的事务。然后,它将连接释放到连接池,或者在连接池被禁用的情况下关闭连接,应用程序可以多次调用 Close。不会生成任何异常。如果将连接池值 Pooling 设置为 true 或 yes,则也会释放物理连接。
对这句话有疑问如果将连接池值 Pooling 设置为 true 或 yes,则也会释放物理连接
:意思是 Pooling设置为true 是不启用连接池吗?
真实测试结果 连接字符串除了Pooling 不一样 其他的都一样 执行的sql 一模一样
同样执行次数:10000次,Pooling=false:38939ms, Pooling=true:12897ms
Pooling=true明显要快一点
SqlSugarClient和SqlSugarScope对比
SqlSugarClient
优点:性能比SqlSugarScope有5%左右提升
缺点: 需要考虑线程安全,同一个对象不能跨上下文使用(支持异步上下文),在不同线程中使用需要new出新对象,对线程安全和异步没深入了解不建议用,原理和Dapper用的SqlConnection一样
SqlSugarScope (5.0.3.4)特色功能
不用考虑任何线程问题,也有不错的性能
,新手必备,也支持单例,异步事务 都完美兼容
单例模式 ( 推荐: 单例模式)
非单例模式 (注意:持续性的高并发new(会占用内存)建议用Scope单例模式)
实际测试效果:连接字符串一模一样,执行的sql也一样
添加了aop记录日志
次数:1000,SqlSugarClient:1239ms, SqlSugarScope:2829ms
次数:10000,SqlSugarClient:13991ms, SqlSugarScope:29742ms
去除aop记录日志
次数:10000,SqlSugarClient:14001ms, SqlSugarScope:17872ms
SqlSugarClient比SqlSugarScope 性能提升的比较多