0%

Protobuf 主要是以数据编码小为著名,主要是用于数据交互和数据存储等,降低带宽、磁盘、移动端网络环境较差减少报文大小等场景,关于序列化速度主要是取决于你用的sdk,所以本文不会关心序列化速度!本文将以proto3语法进行介绍!并且也介绍了如何使用pb规范的定义接口,以及对比了pb2/pb3差别!如果你还对Thrift感兴趣,可以看我这边文章: Thrift协议讲解

阅读全文 »

​ 学习grpc文件

阅读全文 »

​ 个人的Mac环境,主要是解决一些更换电脑时需要重新搞一些东西,以及分享一下个人mac的配置,以及一些命令的推荐!

阅读全文 »

Go有四大核心模块,基本全部体现在runtime,有调度系统、GC、goroutine、channel,那么深入理解其中的精髓可以帮助我们理解Go这一门语言!

阅读全文 »

​ 使用tcpdump + wireshark 可以很好的帮助我们解决线上抓包问题!这里同时也推荐一下我写的一个工具,tcpdump decoder, 因为线上我们并没有wireshark的可视化工具,往往需要tcpdump -w tcpdump.pcap 然后本地通过wireshark调试,是的太过于麻烦和冗余,因此我个人开了一个工具,可以在线解析 HTTP/Thrift流量!

阅读全文 »

Makefile 在开源项目中还是相当的常见的,熟悉他的基本语法,还是很有必要的,其次是Makefile相对于shell脚本的优点就是他的关联性,和前置条件等都很好的解决的构建链条的问题。有些学c/cpp的同学可能比较熟悉,我们这个核心不关注于这个,主要是使用在日常中

阅读全文 »

​ es作为 db搜索alap以及成熟的社区,已经越来越成为后端比较成熟的技术栈了,业务中由于需要大量聚合操作,来弥补传统关系型数据(My-SQL)的性能不足,行数据库的劣势,往往会以es作为辅助的存储工具,因此深入学习es基本概念,原理对于日常开发有很大的帮助!对于SQL-Body来说,es支持SQL语法,还是相当给力的!

​ 由于我们公司es集群基本使用的是 6.8.8版本,所以全部学习资料基于这个版本学习!

阅读全文 »