DotNetNext / SqlSugar

.Net aot ORM Fastest ORM Simple Easy VB.NET Sqlite orm Oracle ORM Mysql Orm postgresql ORm SqlServer oRm 达梦 ORM 人大金仓 ORM 神通ORM C# ORM , C# ORM .NET ORM NET5 ORM .NET6 ORM ClickHouse orm QuestDb ,TDengine ORM,OceanBase orm,GaussDB orm ,Tidb orm Object/Relational Mapping

Home Page:https://www.donet5.com/Home/Doc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sqlite 分库查询 怎么按需配置成多线程或单线程查询

yangjieshao opened this issue · comments

实测分库查询日志型数据
在硬盘是SSD的时候 多线程同时查询多个库会更快
在硬盘是HHD的时候 单线程按顺序查询多个库会更快
(HHD 查多个库 测试下来有出现过 多线程查询比单线程查询慢十多倍的情况 分的库文件越多越慢)

所以有办法设置分库查询是多线程查询还是单线程查询么?

直接用异步就行,sqlite异步性能最好

var ts = new List();
for (int i = 0; i < 1000; i++)//建议一次执行Task不工
{
ts.Add(Task.Run(async () =>
{
var newDb=db.CopyNew();//并发中保证线程安全
await newDb.Queryable().FirstAsync();//异步提升并发性能
}));
}
Task.WhenAll(ts).GetAwaiter().GetResult();