自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 百万级高并发mongodb集群性能数十倍提升优化实践(下篇)

百万级高并发mongodb集群性能数十倍提升优化实践(下篇)关于作者前滴滴出行技术专家,现任OPPO文档数据库mongodb负责人,负责oppo千万级峰值TPS/十万亿级数据量文档数据库mongodb研发和运维工作,一直专注于分布式缓存、高性能服务端、数据库、中间件等相关研发。后续持续分享《MongoDB内核源码设计、性能优化、最佳运维实践》,Github账号地址:https://github.com/y123456yz前言温馨提示:在进行本下篇优化文章阅读前,可以提...

2020-10-05 10:19:49 1251

原创 Mongodb特定场景性能数十倍提升优化实践(记一次mongodb核心集群雪崩故障)

问题背景某核心JAVA长连接服务使用mongodb作为主要存储,客户端数百台机器连接同一mongodb集群,短期内出现多次性能抖动问题,此外,还出现一次“雪崩”故障,同时流量瞬间跌零,无法自动恢复。本文分析这两次故障的根本原因,包括客户端配置使用不合理、mongodb内核链接认证不合理、代理配置不全等一系列问题,最终经过多方努力确定问题根源。该集群有十来个业务接口访问,每个接口部署在数十台业务服务器上面,访问该mongodb机器的客户端总数超过数百台,部分请求一次拉取数十行甚至百余行数据。该集群为2.

2020-10-04 11:38:12 433

原创 常用高并发网络线程模型设计及mongodb线程模型优化实践

1. 线程模型一. 单线程网络IO复用模型说明:1. 所有网络IO事件(accept事件、读事件、写事件)注册到epoll事件集2. 主循环中通过epoll_wait一次性获取内核态收集到的epoll事件信息,然后轮询执行各个事件对应的回调。3. 事件注册、epoll_wait事件获取、事件回调执行全部由一个线程处理1.1一个完整请求组成一个完整的请求处理过程主要包含以下几个部分:步骤1:通过epoll_wait一次性获取网络IO事件...

2020-07-31 14:25:43 317

原创 Mongodb网络传输处理源码实现及性能调优-体验内核性能极致设计

开源mongodb代码规模数百万行,本篇文章内容主要分析mongodb网络传输模块内部实现及其性能调优方法,学习网络IO处理流程,体验不同工作线程模型性能极致设计原理。另外一个目的就是引导大家快速进行百万级别规模源码阅读,做到不同大工程源码”举一反三”快速阅读的目的。此外,mognodb网络工作线程模型设计非常好,不仅非常值得数据库相关研发人员学习,中间件、分布式、高并发、服务端等相关研发人员也可以借鉴,极力推荐大家学习。1. 如何阅读数百万级大工程内核源码Mongodb内核源码由第三方库thi

2020-06-01 11:50:14 1336 2

原创 百万级高并发mongodb集群性能数十倍提升优化实践(上篇)

背景线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性。该集群采用mongodb天然的分片模式架构,数据均衡的分布于各个分片中,添加片键启用分片功能后实现完美的负载均衡。集群每个节点流量监控如下图所示:从上图可以看出集群流量比较大,峰值已经突破120万/...

2019-12-11 20:14:48 2857 2

原创 在线引流工具Tcpcopy原理、使用、采坑

手把手教你做中间件、高性能服务器、分布式存储技术交流群手把手教你做中间件、高性能服务器、分布式存储等(redis、memcache、nginx、大容量redis pika、rocksdb、mongodb、wiredtiger存储引擎、高性能代理中间件),git地址如下: https://github.com/y123456yz/middleware_development_learnin...

2019-06-20 14:13:49 16691

原创 linux内核协议栈TCP time_wait原理、配置、副作用

0. 手把手教你做中间件、高性能服务器、分布式存储技术交流群手把手教你做中间件、高性能服务器、分布式存储等(redis、memcache、nginx、大容量redis pika、rocksdb、mongodb、wiredtiger存储引擎、高性能代理中间件),git地址如下:git地址:https://github.com/y123456yz/middleware_development_le...

2019-06-20 13:56:54 208

原创 Nginx多进程高并发、低时延、高可靠机制在缓存代理中的应用

1 开发背景现有开源缓存代理中间件有twemproxy、codis等,其中twemproxy为单进程单线程模型,只支持memcache单机版和redis单机版,都不支持集群版功能。由于twemproxy无法利用多核特性,因此性能低下,短连接QPS大约为3W,长连接QPS大约为13W; codis起几十个线程,短连接qps不超过10万;同时某些场景这些开源软件时延抖动厉害。为了适应公有云平...

2019-02-28 16:23:23 723 3

原创 mongodb内核源码实现、性能调优、最佳运维实践系列-mongodb网络传输层模块源码实现二

mongodb内核源码实现、性能调优、最佳运维实践系列-mongodb网络传输层模块源码实现二

2020-11-30 14:01:30 161

原创 mongodb内核源码实现、性能调优、最佳运维实践系列-command命令处理模块源码实现二

mongodb内核源码实现、性能调优、最佳运维实践系列-command命令处理模块源码实现二

2020-11-30 13:57:32 122 1

原创 mongodb内核源码实现、性能调优、最佳运维实践系列-command命令处理模块源码实现一

mongodb内核源码实现、性能调优、最佳运维实践系列-command命令处理模块源码实现一

2020-11-30 13:56:29 147

原创 mongodb内核源码实现、性能调优、最佳运维实践系列-transport_layer网络传输层模块源码实现四

mongodb内核源码实现、性能调优、最佳运维实践系列-transport_layer网络传输层模块源码实现四

2020-10-23 20:20:03 95

原创 mongodb内核源码实现、性能调优、最佳运维实践系列-mongodb网络传输层模块源码实现三

mongodb内核源码实现、性能调优、最佳运维实践系列-mongodb网络传输层模块源码实现三

2020-10-23 20:19:13 136

原创 2020-10-23

mongodb内核源码实现、性能调优、最佳运维实践系列-mongodb网络传输层模块源码实现二

2020-10-23 20:18:24 60

原创 Mongodb集群搭建一篇就够了-复制集模式、分片模式、带认证、不带认证等(带详细步骤说明)

Mongodb集群搭建一篇就够了-复制集模式、分片模式、带认证、不带认证等(带详细步骤说明)

2020-10-23 20:17:37 174

原创 2020-10-23

Mongodb特定场景性能数十倍提升优化实践(记一次mongodb核心集群雪崩故障)

2020-10-23 20:16:35 91

原创 常用高并发网络线程模型设计及mongodb线程模型优化实践

常用高并发网络线程模型设计及mongodb线程模型优化实践

2020-10-23 20:15:39 159

原创 Mongodb网络传输处理源码实现及性能调优-体验内核性能极致设计

Mongodb网络传输处理源码实现及性能调优-体验内核性能极致设计

2020-10-23 20:14:28 90

原创 为何要对开源mongodb数据库内核做二次开发

为何要对开源mongodb数据库内核做二次开发

2020-10-23 20:12:50 150

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除