![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
微服务
五山小新新
希望每天6点下班,然后逛超市,买水果,买牛奶,看美女。
展开
-
内存检测工具:sanitizer
1. 背景内存泄漏是一个比较常见的问题,之前使用的是valgrind来实现内存检查的情况比较多,这里介绍一种更加便利的内存检测工具, 那就是gcc自带的sanitizer。2. sanitizer 的用法2.1 sanitizer的基本简介Sanitizers 是谷歌发起的开源工具集,包括AddressSanitizer,MemorySanitizer, ThreadSanitizer, LeakSanitizer, Sanitizers项目本身是llvm项目的一部分,gcc自带的工具, gcc从原创 2020-08-25 12:07:39 · 8178 阅读 · 0 评论 -
gerrit 常用小技巧
文章目录背景基础设置操作提交代码操作背景工作使用的gerrit,记录一些平时经常会用到的git命令,方便备忘。基础设置操作设置用户名和邮箱git config --global user.name xxxgit config --global user.email xxx设置用户自动记住密码git config --global credential.helper store设置配色git config --global color.ui true设置vim(在ub原创 2020-06-11 17:23:24 · 1227 阅读 · 0 评论 -
TarsCpp 的pb2tarscpp支持协程
1. 背景讲真的,开源出来的tars代码质量真的很一般。虽然原生的tars协议(jce协议),支持的比较好, 但是其他协议支持就很一般了,比如pb协议的支持,里面有几个bug, 包括命名空间的支持、rpc调用多个函数指针错乱,以及对协程不支持。anyway,内部版本的taf应该没有这么些问题,可能是负责开源的同学把它阉割过度了。只能说,tars开源的项目真的一点都不真诚。再来讲讲,tars的异...原创 2020-02-17 08:40:21 · 786 阅读 · 1 评论 -
double buffer 实现
1. 背景字典或者模型加载经常会用到双buffer这样读多写少的数据结构。这里介绍一个从百度的brpc拿出来的一个双buffer实现。2. 痛点经常会遇到的是一个读远多于写的数据结构:大部分时候,所有线程从一个不变的server列表中选取一台server。如果server列表真是“不变的”,那么选取server的过程就不用加锁,我们可以写更复杂的分流算法。一个方法是用读写锁,但当读临界区不是...原创 2020-01-18 15:31:16 · 2125 阅读 · 0 评论 -
tars C++ docker 环境配置
0. 环境说明centos 7.4 vb 虚拟机enp0s3 natenp0s8 host-only(192.168.56.101)1. 安装docker参考https://www.cnblogs.com/yufeng218/p/8370670.htmlsudo yum install -y yum-utils device-mapper-persistent-data lvm2su...原创 2019-06-10 00:11:19 · 1344 阅读 · 0 评论 -
Protocol Buffer 常用操作指南
1. 数据结构复制原创 2019-06-17 17:41:23 · 290 阅读 · 0 评论 -
RocksDB 入门
1. 基本介绍RocksDB是Facebook开源的一个k-v存储组件,支持点查找和范围扫描, 并提供ACID保证。实现架构主要参考的是开源的leveldb和hbase的设计思想。目前RocksDB主要用于本地存储引擎。1.1 基础架构图Rocksdb中引入了ColumnFamily(列族, CF)的概念,所谓列族也就是一系列kv组成的数据集。所有的读写操作都需要先指定列族。写操作先写WA...原创 2019-06-24 00:55:49 · 2831 阅读 · 0 评论