Zale的博客

Reactive-MongoDB 异步 Java Driver 解读

zale评论(0)赞(0)

一、关于 异步驱动 从3.0 版本开始,MongoDB 开始提供异步方式的驱动(Java Async Driver),这为应用提供了一种更高性能的选择。 但实质上,使用同步驱动(Java Sync Driver)的项目也不在少数,或许是因为...

时间跳变对副本集有什么影响

zale评论(0)赞(0)

背景 在生产环境的部署中,由于各种不确定因素的存在(比如机器掉电、网络延迟等),各节点上的系统时间很可能会出现不一致的情况。 对于MongoDB来说,时间不一致会对数据库的运行带来一些不可预估的风险,比如主从复制、定时调度都或多或少依赖于时...

谨防索引 seeks 的效率低下

zale评论(1)赞(0)

背景 最近线上的一个工单分析服务一直不大稳定,监控平台时不时发出数据库操作超时的告警。 运维兄弟沟通后,发现在每天凌晨1点都会出现若干次的业务操作失败,而数据库监控上并没有发现明显的异常。 在该分析服务的日志中发现了某个数据库操作产生了 S...

副本集是如何实现自动Failover的

zale评论(1)赞(0)

简介 最近一个 MongoDB 集群环境中的某节点异常下电了,导致业务出现了中断,随即又恢复了正常。 通过ELK 告警也监测到了业务报错日志。 运维部对于节点下电的原因进行了排查,发现仅仅是资源分配上的一个失误导致。 在解决了问题之后,大家...

是什么造成了数据库的卡顿

zale评论(2)赞(1)

一、背景 MongoDB 提供了非常强大的性能分析及监控的命令,诸如 mongostat、mongotop 可以让我们对数据库的运行态性能了如指掌。 然而,这次我们在性能环境上就遇到一个非常棘手的问题: 某服务接口在 1-5分钟内偶现超时导...

海量数据的分页怎么破?

zale评论(7)赞(0)

一、背景 分页应该是极为常见的数据展现方式了,一般在数据集较大而无法在单个页面中呈现时会采用分页的方法。 各种前端UI组件在实现上也都会支持分页的功能,而数据交互呈现所相应的后端系统、数据库都对数据查询的分页提供了良好的支持。 以几个流行的...

一个数组查询引发的坑

zale评论(0)赞(0)

背景 中午12点半,接到了线上MongoDB 数据库异常的告警通报: “CPU不间断飙升到百分百,业务也相应出现了抖动现象。” 通过排查数据库主节点的日志,发现了这样的一个慢语句: 2019-03-07T10:56:43.470+0000 ...