文章插图
3、MongoDB获取连接数信息
db.serverStatus().connections
- 1.
文章插图
4、MongoDB获取全局锁信息
db.serverStatus().globalLock
- 1.
文章插图
5、MongoDB获取操作统计计数器
db.serverStatus().opcounters
- 1.
文章插图
6、MongoDB获取数据库状态信息
db.stats()
- 1.
文章插图
以上是MongoDB的重要指标 , 通过这些指标我们可以了解到MongoDB的运行状态 , 评估数据库的健康程度 , 并快速确定实际项目中遇到的性能瓶颈 。
比如项目中遇到的Timeout异常:
com.mongodb.MongoSocketReadTimeoutException: Timeout while receiving messageat com.mongodb.connection.InternalStreamConnection.translateReadException(InternalStreamConnection.JAVA:475)at com.mongodb.connection.InternalStreamConnection.receiveMessage(InternalStreamConnection.java:226)at com.mongodb.connection.UsageTrackingInternalConnection.receiveMessage(UsageTrackingInternalConnection.java:105)at com.mongodb.connection.DefaultConnectionPool$PooledConnection.receiveMessage(DefaultConnectionPool.java:438)at com.mongodb.connection.CommandProtocol.execute(CommandProtocol.java:112)at com.mongodb.connection.DefaultServer$DefaultServerProtocolExecutor.execute(DefaultServer.java:168)at com.mongodb.connection.DefaultServerConnection.executeProtocol(DefaultServerConnection.java:289)at com.mongodb.connection.DefaultServerConnection.command(DefaultServerConnection.java:176)at com.mongodb.operation.CommandOperationHelper.executeWrAppedCommandProtocol(CommandOperationHelper.java:216)at com.mongodb.operation.CommandOperationHelper.executeWrappedCommandProtocol(CommandOperationHelper.java:207)at com.mongodb.operation.CommandOperationHelper.executeWrappedCommandProtocol(CommandOperationHelper.java:113)at com.mongodb.operation.FindOperation$1.call(FindOperation.java:488)at com.mongodb.operation.FindOperation$1.call(FindOperation.java:1)at com.mongodb.operation.OperationHelper.withConnectionSource(OperationHelper.java:241)at com.mongodb.operation.OperationHelper.withConnection(OperationHelper.java:214)at com.mongodb.operation.FindOperation.execute(FindOperation.java:483)at com.mongodb.operation.FindOperation.execute(FindOperation.java:1)at com.mongodb.Mongo.execute(Mongo.java:818)
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
六、MongoDB持久性?1、复制延迟复制延迟是指从节点无法跟上主节点的速度 。
从节点一个操作的时间减去主节点此操作的时间 , 就是复制延迟 。延迟应该尽可能的接近0 , 并且通常是毫秒级的 。
2、备份备份操作通常会将所有数据读入内存 , 因此 , 备份操作通常应该在副本集从节点而不是主节点进行 , 如果是单机MongoDB , 则应该在空间时间进行备份 , 比如深夜凌晨 。
3、持久性持久性是数据库必备的一种特性 , 想象一下 , 如果数据库不具备持久性 , 如果数据库重启 , 数据全部丢失 , 太可怕了 , 不敢想 。
为了在服务器发生故障时提供持久性 , MongoDB使用预写式日志机制 , 英文简称 WAL 。WAL是数据库系统中一种常见的持久性技术 。在数据存入数据库之前 , 将这些更改操作写到磁盘上 。
从MongoDB4.0开始 , 执行写操作时 , MongoDB会使用与oplog相同的格式创建日志 。oplog语句具有幂等性 , 不管执行多少次 , 结果都是一样的 。
推荐阅读
- 最好的手机膜是哪种-性能最好的手机前十位
- html简单网页代码模板,HTML网页设计:一个简单的登录界面可以连接到数据库记录的代码?
- 斯坦福电球官网?请问无锡斯坦福HJI100与上海斯坦福HJI100发电机哪个性能好些?
- 湖北汽车工业学院图书馆数据库~湖北汽车工业学院面积?
- 显卡性能测试软件甜甜圈?常用的显示器测试软件有哪些?
- 数据库系统期末考试试题 数据库试题
- 钢材的性能指标主要有哪些? 钢材性能
- 索泰1650显卡怎么样!显卡 索泰.gtx1070性能怎么样?好吗?
- 面料性能你要知道的小知识 面料知识
- 各种火灾探测器的性能特点 图像火焰探测器