美文网首页Mongodb
Mongodb 多进程高并发问题

Mongodb 多进程高并发问题

作者: Sdoopy | 来源:发表于2020-02-24 18:54 被阅读0次

使用了6台24核48线程的服务器,同时对mongo数据库进行查询。并发数达到200以上,造成数据库经常崩溃,查询大量资料后,总结如下解决方案:

1.配置优化

参考 百万级高并发mongodb集群性能数十倍提升优化实践,对mongodb 配置优化。
修改mongodb.conf

net:
  serviceExecutor: "adaptive"

2.通过查看mongodb 日志,发现报"too many open files" 异常

参考 MongoDB连接数与连接优化, 发现有两个原因造成
1.ulimit -a 查看。linux下默认的open files是1024,在提供服务的时候往往太小。参考https://www.iteye.com/blog/happyqing-1953563进行修改。
2.mongodb自身的限制。有个参数是–maxConns,用来指定最大的连接数,默认是20000。现在应该没有这个限制了。
3.在任务运行的时候,可以查看实时查看连接数。db.serverStatus().connections

3.参考 MongoDB从入门到优化,发现有个配置项 listenBacklogmaxConns 。可以进行优化

listenBacklog 取决于 /proc/sys/net/core/somaxconn 的值 。
修改 /proc/sys/net/core/somaxconn ,参考 修改tcp内核参数:somaxconn

4. MongoDB运行状态、性能监控,分析

5. MongoDB分析工具之三:db.currentOp()

相关文章

  • Mongodb 多进程高并发问题

    使用了6台24核48线程的服务器,同时对mongo数据库进行查询。并发数达到200以上,造成数据库经常崩溃,查询大...

  • 进程/线程

    进程和线程 多任务的介绍 进程的介绍 多进程完成多任务 获取进程编号 进程的注意点 文件夹高并发copy器 1、多...

  • 高并发解决方案

    什么是高并发? 多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发问题。 要想解决高并发,就要先了解...

  • 高并发解决方案

    什么是高并发 多个进程或者线程同时(或者在同一段时间内)访问统一资源会产生的并发问题 高并发初期解决方案 系统或服...

  • 8、同步互斥机制1(进程并发执行)(操作系统笔记)

    一、进程并发执行 1.1问题的提出 并发是所有问题产生的基础,也是操作系统设计的基础。 1.2从进程的特征看待并发...

  • 单进程 单线程协程 的方式实现多任务2019-07-06

    基于一个问题的引出:多进程、多线程、是可以实现多任务的,但它们的效率不高,耗费的资源多,在当下高并发压力下力不从心...

  • 多线程

    单线程进程结构缺点: 并发程序存在问题 进程切换开销大 进程通信开销大 限制了进程并发的力度 降低了并行计算的效率...

  • MongoDB高并发写场景开启读写分离读从库为何阻塞? 我们该如

    目录 MongoDB高并发写场景开启读写分离读从库为何阻塞? 我们该如何处理? MongoDB 4.0有哪些新特性...

  • [OS] 进程管理 内存管理

    并发和并行 高并发: 提高了系统的利用率 并行: 多核计算机同时运行多个进程或线程, 提高了性能 进程和线程 进程...

  • Nginx实现高并发及原理

    关键词:nginx 1、nginx基本介绍 1.nginx高并发原理(多进程(单线程)+epoll实现高并发) 1...

网友评论

    本文标题:Mongodb 多进程高并发问题

    本文链接:https://www.haomeiwen.com/subject/yrqiqhtx.html