mongodb 参数优化
1.大部分IO操作为随机IO,建议采用SSD或PCIE,普通硬盘RAID10
2.IO调度算法。普通磁盘:deadline避免IO请求出现“饥饿”现象,SSD/PCIE:noop简单的先进先出处理请求。
echo "noop" > /sys/block/sdxxxx/queue/scheduler #SSD
echo "deadline" > /sys/block/sdxxxx/queue/scheduler #普通盘
并添加至 /etc/rc.local
cat /sys/block/sdxxxx/queue/scheduler #查看
3.文件系统选择XFS
4.磁盘挂载
vim /etc/fstab
/dev/vdc /data1 xfs defaults,noatime,nodiratime 1 2
5.内存优化
关闭大叶内存 echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
echo "never" > /sys/kernel/mm/transparent_hugepage/defrag
numal设置 echo 0 > /proc/sys/vm/zone_reclaim_mode
并添加到/etc/rc.local
mongodb节点启动 sudo -u mongo numactl --interleave=all mongod -f mongo.cnf
6.NTP时间同步
7.进程数限制
vim /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535
* soft stack 1024
* hard stack 1024
vim /etc/security/limits.d/90-nproc.conf
* soft nproc 65535
8. mongo性能参数
journal日志和data分开,journal不支持直接指定目录,可以创建软链接解决。
wiredTigerCacheSizeGB=x 尽可能覆盖所有热数据
storage.dirctoryPerDB=true 数据文件单独存储
wiredTigerDirectoryForIndexes=true 索引文件单独存储
wiredTigerCollectionBlockCompressor=snappy 集合压缩存储模式 zlib压缩最高
journal=true
安全参数
nohttpinterface=true (<3.6版本)
bind_ip_all_true (>=3.6) 配置节点访问范围
keyFile=/dbPath/keyFile 指定集群间认证模式
openssl rand -base64 66 -out keyFile
chmod 600 keyFile && chown mongo.mongo keyFile
setParameter=enableLocalhostAuthBypass=1 启用本地认证
maxConns=65536 控制最大连接数
参数配置模板
fork =true #后台运行
port =7777
quiet =true # 方便排查问题
dbpath = /data1/xxxx
logpath=/data1/xxxx
logappend =true
journal=true
nohttpinterface=true #3.6后已经废弃
directoryperdb=true
wiredTigerDirectoryForIndexes=true
bind_ip_all =true
maxConns=65536
profile=1 # 日志记录级别
slowms=500 #慢查询记录时间(毫秒)
replset=rs #备份集
oplogSize=40960 #oplog大小
keyFile=/data1/xxxx/keyFile
setParameter=enableLocalhostAuthBypass=1
storageEngine=wiredTiger
wiredTigerCacheSizeGB=1
wiredTigerCollectionBlockCompressor=snappy
#shardsvr=true #配置节点角色 (>=3.4 shard节点专用)
#configsvr=true #指定config节点角色 (>=3.4 config节点专用)
#configdb=mschost #指定config配置信息 (mongos 节点专用)
mongodb 参数优化的更多相关文章
- WiredTiger运行时参数优化
MongoDB的WiredTiger存储引擎,用了一段时间,遇到了一些问题,通过优化WT参数,也解决了一些问题,做个小结. cache_size 指定WT存储引擎内部cache的内存用量上限. 需要注 ...
- linux下TCP/IP及内核参数优化调优(转)
Linux下TCP/IP及内核参数优化有多种方式,参数配置得当可以大大提高系统的性能,也可以根据特定场景进行专门的优化,如TIME_WAIT过高,DDOS攻击等等. 如下配置是写在sysctl.con ...
- Windows下tcp参数优化
Windows系统下的TCP参数优化2013-04-25 0 个评论 作者:最初的幸福ever收藏 我要投稿Windows系统下的TCP参数优化 TCP连接的状态与关闭方 ...
- paper 62:高斯混合模型(GMM)参数优化及实现
高斯混合模型(GMM)参数优化及实现 (< xmlnamespace prefix ="st1" ns ="urn:schemas-microsoft-com:of ...
- MySQL配置文件my.cnf参数优化和中文详解
Mysql参数优化对于新手来讲,是比较难懂的东西,其实这个参数优化,是个很复杂的东西,对于不同的网站,及其在线量,访问量,帖子数量,网络情况,以及机器硬件配置都有关系,优化不可能一次性完成,需要不断的 ...
- MongoDB 性能优化五个简单步骤
MongoDB 一直是最流行的 NoSQL,而根据 DB-Engines Ranking 最新的排行,时下 MongoDB 已经击败 PostgreSQL 跃居数据库总排行的第四位,仅次于 Oracl ...
- 内核参数优化/etc/sysctl.conf
net.nf_conntrack_max = 65536000net.netfilter.nf_conntrack_tcp_timeout_established = 1200net.ipv4.tcp ...
- Limit参数优化MySQL查询的方法
在做一些查询时,总希望能避免数据库引擎做全表扫描,因为全表扫描时间长,而且其中大部分扫描对客户端而言是没有意义的.那么,在mysql中有那些方式是可以避免全表扫面?除了通过使用索引列或分区等方式来进行 ...
- MySQL参数优化
目前针对MySQL数据库进行了一些参数优化,具体如下: my.ini / my.cnf 参数说明 #使用查询缓存 query_cache_size=100M # ...
随机推荐
- 近日测试发现所有Excel相关功能均会抛异常,查后发现与福昕阅读器不兼容
报这种错: System.Runtime.InteropServices.COMException (0x80010105): 服务器出现意外情况. (异常来自 HRESULT:0x80010105 ...
- 用Python进行SQLite数据库操作
简单的介绍 SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经 ...
- liblensfun 在 mingw 上编译时遇到的奇怪问题
ffmpeg 2018.07.15 增加 lensfun 滤镜; 这个滤镜需要 liblensfun 库; Website: http://lensfun.sourceforge.net/ Sourc ...
- 【原创】大叔经验分享(19)spark on yarn提交任务之后执行进度总是10%
spark 2.1.1 系统中希望监控spark on yarn任务的执行进度,但是监控过程发现提交任务之后执行进度总是10%,直到执行成功或者失败,进度会突然变为100%,很神奇, 下面看spark ...
- [Linux]目录x权限对文件操作的影响
问题 我们常使用linux以下命令 cd 进入目录 ls 列出目录中的文件 或者直接打开目录中的文件 以上操作对于目录权限位的设置来说,是有一定迷惑性的,如表格所示 cd进入该目录 cd进入该目录 ...
- noj算法 素数环 回溯法
描述: 把1到20这重新排列,使得排列后的序列A满足:a. 任意相邻两个数之和是素数b. 不存在满足条件a的序列B使得:A和B的前k(0 <= k <= 19)项相同且B的第k+1项比A的 ...
- git使用随笔
详细:https://blog.csdn.net/qq_31117191/article/details/77141825 git是分为三部分,一部分是你自己的文件,另外一个是缓存区,最后一个是本 ...
- 【异常处理】Java异常如何做异常处理
类似SpringMVC项目的异常处理可以这样做: 整个项目创建全局的: 1.一个自定义异常如OneException和错误码,统一封装所有异常. 2.一个返回实体类ResponseEntity,包含返 ...
- linux的时间问题
在linux系统中时间分为修改时间(modify time 简写:mtime ),访问时间(access time 简写: atime),状态修改时间(change time 简写:ctime)三种: ...
- hdu4507 数位dp+推公式
推公式的能力需要锻炼.. /* dp的时候要存结构体 里面三个元素: cnt,就是满足条件的个数 sum1,就是满足条件的数字和 sum2,满足条件的数字平方和 推导过程:还是用记忆化搜索模板 dp[ ...