摘要: Google protobuf是非常出色的开源工具,在项目中可以用它来作为服务间数据交互的接口,例如rpc服务、数据文件传输等。protobuf为proto文件中定义的对象提供了标准的序列化和反序列化方法,可以很方便的对pb对象进行各种解析和转换。以下是我总结的protobuf使用技巧和经验,分享给 阅读全文
posted @ 2019-02-19 23:00 张巩武 阅读(7428) 评论(0) 推荐(0) 编辑
摘要: Go语言是Google公司在2009年开源的一门高级编程语言,它为解决大型系统开发过程中的实际问题而设计,支持并发、规范统一、简单优雅,被很多Go语言传道者誉为“互联网时代的C语言”。而C++语言诞生于1979年,可以将C++语言视为一个语言联邦,主要包含C语言(面向过程)、面向对象、STL容器和算 阅读全文
posted @ 2019-02-17 23:06 张巩武 阅读(5436) 评论(0) 推荐(1) 编辑
摘要: 任何好用的工具如果使用不当都会带来不好的后果,gflags也是一样。我遇到过一些gflags的“坑”,还从领导和同事那里获得一些好的想法,整理成7条gflags使用规范。有意识的遵循这些规范,对项目的开发维护和自身的技术成长都将有很大的益处。 规范1:bool类型的gflags默认值设置成false 阅读全文
posted @ 2018-08-26 22:14 张巩武 阅读(525) 评论(0) 推荐(0) 编辑
摘要: gflags是Google的一个开源项目,用于解析程序运行参数。gflags简单易用,它的好处在于统一配置格式,减少开发工作量。在工程实践中,gflags在简化开发和测试方面表现非常出色,它还有一个很棒的功能是支持多人合作开发。gflags在2008年首次推出,至今已有10年时间,目前有很多公司都在 阅读全文
posted @ 2018-08-26 22:10 张巩武 阅读(681) 评论(0) 推荐(0) 编辑
摘要: 线程池是一种很经典的技术,在后端系统中很常见。线程池的常规做法是提前创建好一组工作线程,然后将任务分发给这些工作线程来处理,这样就避免了频繁的线程创建和销毁,同时也能很好的控制线程数量。线程池本质上是一种池化技术,利用空间来换取时间。线程池技术已经存在很多年,在面试的时候被问到的概率很高,在工作中也 阅读全文
posted @ 2018-08-26 22:05 张巩武 阅读(1737) 评论(0) 推荐(0) 编辑