之前在测试mongodb持续大量插入的时候,遇到一些问题:
1 mongodb的插入性能不稳定,经常某一段时间一条都插不进去
2 mongodb的插入速度不是很高,平均在2000/shard*second
3 mongodb在持续插入的情况下,经常出现slave的RS102错误,恢复起来非常消耗时间
我的测试环境:
shard1: dxud3c006 + dxud3c007 + dxud3c008
shard2: dxud3c009 + dxud3c010 + dxud3c011
config: dxud3c006 + dxud3c009 + dxud3c005
mongos: dxud3c005(4个)
请诸位牛人帮忙看看可能是什么原因
批量更新,利用WriteModel类型来存储要插入的集合,使用InsertOneModel类型来承载要插入的对象
public void Insert(IEnumerable<TEntity> item)
{
var list = new List<WriteModel<TEntity>>();
foreach (var iitem in item)
{
list.Add(new InsertOneModel<TEntity>(iitem));
}
_table.BulkWriteAsync(list).Wait();
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。