首页 > 数据库 >MongoDB延迟查询

MongoDB延迟查询

时间:2024-09-10 23:51:28浏览次数:12  
标签:10T09 MongoDB 09 查询 2024 ISODate Timestamp NumberLong 延迟

在 MongoDB 中,查看副本集成员之间的副本延迟可以通过以下步骤进行:

  1. 使用 rs.status() 命令
    这个命令提供了副本集的详细状态信息,包括每个成员的延迟情况。在 MongoDB shell 中,你可以执行以下命令:

    rs.status()
    

    这个命令会返回一个包含副本集所有成员状态的对象。在返回的对象中,每个成员都有一个 optime 字段,显示了该成员最后应用的操作的时间戳。

  2. 查看 optime 字段
    optime 字段是一个包含两个部分的对象:ts(timestamp)和 t(term)。ts 是一个 Timestamp 对象,表示最后应用的操作的时间。

  3. 比较主节点和从节点的 optime
    主节点的 optime 应该总是最新的,而从节点的 optime 可能会有所延迟。你可以通过比较主节点和从节点的 optime 来估计延迟。

  4. 使用 rs.printReplicationInfo() 命令
    这个命令提供了一个更易于阅读的副本集状态报告,包括每个成员的延迟信息。在 MongoDB shell 中,执行以下命令:

    rs.printReplicationInfo()
    

    这个命令会打印出副本集的状态信息,包括每个成员的延迟。

  5. 监控延迟
    如果你想要持续监控副本集的延迟,你可以定期运行这些命令,或者使用 MongoDB 的监控工具,如 MongoDB Cloud Manager 或第三方监控解决方案。

请注意,副本延迟可能会因为网络延迟、磁盘 I/O、CPU 使用率等因素而变化。如果你发现延迟异常高,可能需要检查副本集成员的性能和配置。

mongo-baa26600-replica0:SECONDARY> rs.printReplicationInfo()
configured oplog size:   10240MB
log length start to end: 370018secs (102.78hrs)
oplog first event time:  Fri Sep 06 2024 10:54:09 GMT+0800 (CST)
oplog last event time:   Tue Sep 10 2024 17:41:07 GMT+0800 (CST)
now:                     Tue Sep 10 2024 17:41:14 GMT+0800 (CST)
mongo-baa26600-replica0:SECONDARY> rs.status()
{
        "set" : "mongo-baa26600-replica0",
        "date" : ISODate("2024-09-10T09:42:31.340Z"),
        "myState" : 2,
        "term" : NumberLong(162),
        "syncSourceHost" : "10.10.98.127:3692",
        "syncSourceId" : 2,
        "heartbeatIntervalMillis" : NumberLong(2000),
        "majorityVoteCount" : 2,
        "writeMajorityCount" : 2,
        "votingMembersCount" : 3,
        "writableVotingMembersCount" : 3,
        "optimes" : {
                "lastCommittedOpTime" : {
                        "ts" : Timestamp(1725961346, 1),
                        "t" : NumberLong(162)
                },
                "lastCommittedWallTime" : ISODate("2024-09-10T09:42:26.430Z"),
                "readConcernMajorityOpTime" : {
                        "ts" : Timestamp(1725961346, 1),
                        "t" : NumberLong(162)
                },
                "readConcernMajorityWallTime" : ISODate("2024-09-10T09:42:26.430Z"),
                "appliedOpTime" : {
                        "ts" : Timestamp(1725961346, 1),
                        "t" : NumberLong(162)
                },
                "durableOpTime" : {
                        "ts" : Timestamp(1725961346, 1),
                        "t" : NumberLong(162)
                },
                "lastAppliedWallTime" : ISODate("2024-09-10T09:42:26.430Z"),
                "lastDurableWallTime" : ISODate("2024-09-10T09:42:26.430Z")
        },
        "electionParticipantMetrics" : {
                "votedForCandidate" : true,
                "electionTerm" : NumberLong(162),
                "lastVoteDate" : ISODate("2024-09-10T08:55:47.309Z"),
                "electionCandidateMemberId" : 2,
                "voteReason" : "",
                "lastAppliedOpTimeAtElection" : {
                        "ts" : Timestamp(1725958536, 1),
                        "t" : NumberLong(161)
                },
                "maxAppliedOpTimeInSet" : {
                        "ts" : Timestamp(1725958536, 1),
                        "t" : NumberLong(161)
                },
                "priorityAtElection" : 1,
                "newTermStartDate" : ISODate("2024-09-10T08:55:47.311Z"),
                "newTermAppliedDate" : ISODate("2024-09-10T08:55:48.546Z")
        },
        "members" : [
                {
                        "_id" : 0,
                        "name" : "10.10.98.123:7315",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 4539,
                        "optime" : {
                                "ts" : Timestamp(1725961346, 1),
                                "t" : NumberLong(162)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1725961346, 1),
                                "t" : NumberLong(162)
                        },
                        "optimeDate" : ISODate("2024-09-10T09:42:26Z"),
                        "optimeDurableDate" : ISODate("2024-09-10T09:42:26Z"),
                        "lastHeartbeat" : ISODate("2024-09-10T09:42:30.831Z"),
                        "lastHeartbeatRecv" : ISODate("2024-09-10T09:42:30.318Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncSourceHost" : "10.10.98.127:3692",
                        "syncSourceId" : 2,
                        "infoMessage" : "",
                        "configVersion" : 111017,
                        "configTerm" : -1
                },
                {
                        "_id" : 1,
                        "name" : "10.10.98.125:4933",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 86381,
                        "optime" : {
                                "ts" : Timestamp(1725961346, 1),
                                "t" : NumberLong(162)
                        },
                        "optimeDate" : ISODate("2024-09-10T09:42:26Z"),
                        "syncSourceHost" : "10.10.98.127:3692",
                        "syncSourceId" : 2,
                        "infoMessage" : "",
                        "configVersion" : 111017,
                        "configTerm" : -1,
                        "self" : true,
                        "lastHeartbeatMessage" : ""
                },
                {
                        "_id" : 2,
                        "name" : "10.10.98.127:3692",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 86378,
                        "optime" : {
                                "ts" : Timestamp(1725961346, 1),
                                "t" : NumberLong(162)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1725961346, 1),
                                "t" : NumberLong(162)
                        },
                        "optimeDate" : ISODate("2024-09-10T09:42:26Z"),
                        "optimeDurableDate" : ISODate("2024-09-10T09:42:26Z"),
                        "lastHeartbeat" : ISODate("2024-09-10T09:42:30.830Z"),
                        "lastHeartbeatRecv" : ISODate("2024-09-10T09:42:31.332Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncSourceHost" : "",
                        "syncSourceId" : -1,
                        "infoMessage" : "",
                        "electionTime" : Timestamp(1725958547, 1),
                        "electionDate" : ISODate("2024-09-10T08:55:47Z"),
                        "configVersion" : 111017,
                        "configTerm" : -1
                }
        ],
        "ok" : 1,
        "$clusterTime" : {
                "clusterTime" : Timestamp(1725961346, 1),
                "signature" : {
                        "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                        "keyId" : NumberLong(0)
                }
        },
        "operationTime" : Timestamp(1725961346, 1)
}

标签:10T09,MongoDB,09,查询,2024,ISODate,Timestamp,NumberLong,延迟
From: https://blog.csdn.net/hezuijiudexiaobai/article/details/142104973

相关文章

  • MySQL 查询优化秘籍:让你的数据库查询飞起来
    在数据库应用中,高效的查询性能至关重要。MySQL作为广泛使用的关系型数据库,掌握一些常用的查询优化方法可以极大地提升系统的响应速度和性能。今天,我们就来一起探讨常用的优化MySQL查询方法及示例。一、索引优化索引就像是数据库的导航地图,能够快速定位数据。选择合适的索引......
  • MySQL之多表查询和子查询
    一、多表查询1、概述MySQL中的多表查询允许用户在单个查询语句中联合两个或多个表,依据表之间的关联关系来提取所需数据,这种技术在处理复杂数据关系时尤为常见和重要。简单讲就是多表查询就是从两个或多个表中检索数据,当需要结合不同表中的信息时,通常会使用JOIN子句来实现......
  • MySQL进阶(三)--多表查询
    3,多表查询多表查询顾名思义就是从多张表中一次性的查询出我们想要的数据。我们通过具体的sql给他们演示,先准备环境DROPTABLEIFEXISTSemp;DROPTABLEIFEXISTSdept;#创建部门表 CREATETABLEdept(didINTPRIMARYKEYAUTO_INCREMENT,dname......
  • sql查询字段截取
    SELECTCASEWHENSUBSTR(code,-2)='00'THENSUBSTR(code,1,LENGTH(code)-2)ELSEcodeENDAScodeFROMtest_table;说明:如果code最后两位是00的话,就截取掉,如果不是的话,就直接取code。......
  • MySQL(六)查询连续出现N次问题总结
    连续问题的本质单调递增的等差数列例如游戏连续签到7天可以获得奖品,连续出现3次的数字求解方法(1)确定什么属性连续出现三次,即哪一属性连续,哪一属性相等(2)增加额外的等差递增列,然后进行作差分组案例查询至少连续出现3次的数字Logs表:idnum11213142......
  • Redis实现延迟任务的操作流程
    延迟任务(DelayedTask)是指在未来的某个时间点,执行相应的任务。也就是说,延迟任务是一种计划任务,它被安排在特定的时间后执行,而不是立即执行。延迟任务的常见使用场景有以下几个:定时发送通知或消息:发送定时短信、邮件或应用内消息,如注册确认、订单状态更新、促销活动通知等......
  • 保险公司如何用到IP地址查询?
    随着高新技术的日新月异,各大保险公司的服务方式也在逐渐完善,他们也在用更先进的数据分析技术来优化业务流程,提升客户体验和增强风险管理能力。其中,IP地址查询也是他们赖以依靠的技术之一。那么保险公司是如何在他们的领域去使用IP地址查询的呢?身份验证与反欺诈在保险行业中,......
  • Ignite系列1-jdbc连接,建表,查询示例
    一、JDBC方式连接Ignite集群    通过JDBC方式连接Ignite集群,执行SQL进行见表,mergeinto插入数据,并执行结果查询示例如下:/***测试ignitejdbc连接,简单创建按一张表,插入一条数据,然后查询出来,并验证字段是否正确*@throwsClassNotFoundException*......
  • VUE框架Vue3使用自定义的ref实现延迟加载效果的实现解决setTimeout过多导致的抖动问题
    import{customRef}from"vue";exportdefaultfunction(){//自己定义一个reffunctionuseDebouncedRef(value){//自定义的ref函数体需要符合ref规范//通过调用customRef来获取一个ref实例//调用customRef必须要给出一个回调函数作为形......
  • LLog:Spring轻量级请求日志监控组件,集成管理面板,支持多条件查询检索
    开源地址https://gitee.com/lboot/LLog简介LLog是基于AOP构建的请求日志记录和查询工具库,通过引入该工具库,完成配置,实现对接口请求日志的记录、查询检索等功能。请求状态、时间、来源、耗时,请求参数,响应结果,作用接口记录支持与鉴权服务结合,记录请求来源为用户ID通过注解......