上一页 1 2 3 4 5 6 7 8 ··· 19 下一页
摘要: go test命令,相信大家都不陌生,常见的情况会使用这个命令做单测试、基准测试和http测试。go test还是有很多flag 可以帮助我们做更多的分析,比如测试覆盖率,cpu分析,内存分析,也有很多第三方的库支持test,cpu和内存分析输出结果要配合pprof和go-torch来进行可视化显示 阅读全文
posted @ 2018-12-06 16:29 li-peng 阅读(18500) 评论(3) 推荐(1) 编辑
摘要: 服务的注册与发现是微服务必不可少的功能,这样系统才能有更高的性能,更高的可用性。go-micro框架的服务发现有自己能用的接口Registry。只要实现这个接口就可以定制自己的服务注册和发现。 go-micro在客户端做的负载,典型的Balancing-aware Client模式。 服务端把服务的 阅读全文
posted @ 2018-10-08 19:47 li-peng 阅读(12517) 评论(2) 推荐(3) 编辑
摘要: 上一篇帖子简单介绍了go-micro的整体框架结构,这一篇主要写go-micro使用方式的例子,中间会穿插一些go-micro的源码,和调用流程图,帮大家更好的理解go-micro的底层。更详细更具体的调用流程和细节,会在以后的帖子里详细讲解。 例子的github地址: gomicrorpc 跑一遍 阅读全文
posted @ 2018-09-10 15:18 li-peng 阅读(25964) 评论(14) 推荐(1) 编辑
摘要: 产品嘴里的一个小项目,从立项到开发上线,随着时间和需求的不断激增,会越来越复杂,变成一个大项目,如果前期项目架构没设计的不好,代码会越来越臃肿,难以维护,后期的每次产品迭代上线都会牵一发而动全身。项目微服务化,松耦合模块间的关系,是一个很好的选择,随然增加了维护成本,但是还是很值得的。 微服务化项目 阅读全文
posted @ 2018-09-03 15:17 li-peng 阅读(21517) 评论(4) 推荐(9) 编辑
摘要: 软件开发过程中,项目上线并不是终点。上线后,还要对程序的取样分析运行情况,并重构现有的功能,让程序执行更高效更稳写。 golang的工具包内自带pprof功能,使找出程序中占内存和CPU较多的部分功能方便了不少。加上uber的火焰图,可视化显示,让我们在分析程序时更简单明了。 pprof有两个包用来 阅读全文
posted @ 2018-07-30 18:01 li-peng 阅读(22578) 评论(1) 推荐(6) 编辑
摘要: etcd是一个开源的分布式键值对数据库,他的每一个节点都有一份数据的copy,当有节点故障时保证了高可用性。etcd使用Raft算法来保证一致性。 第一次接触etcd是在学习k8s时。k8s用etcd做的服务发现。后来在开发一个分布式系统时需要用到服务发现,就想试一下用etcd做服务发现。效果还是很 阅读全文
posted @ 2018-07-06 17:28 li-peng 阅读(10813) 评论(0) 推荐(4) 编辑
摘要: 源网址:http://legendtkl.com/2017/07/01/golang-interface-implement/ 0.引言 在上一篇文章 《深入理解 Go Interface》中从设计和使用的角度介绍了 Golang 的 interface,作为补充,这篇文章将从源码级别来看看 int 阅读全文
posted @ 2018-05-31 16:21 li-peng 阅读(1491) 评论(0) 推荐(0) 编辑
摘要: 经常会有一些朋友问go语言的一些问题和疑惑,其实好多问题在官方文档和stackoverflow里都有详细的讲解,只要你肯花时间读一遍官方文档和Effective Go基本上都有找到答案。本文总结一下大家经常问到的一些问题,长期更新。 代码都在github上, 地址 https://github.co 阅读全文
posted @ 2018-05-04 18:07 li-peng 阅读(1214) 评论(1) 推荐(3) 编辑
摘要: 什么是defer defer用来声明一个延迟函数,把这个函数放入到一个栈上, 当外部的包含方法return之前,返回参数到调用方法之前调用,也可以说是运行到最外层方法体的"}"时调用。我们经常用他来做一些资源的释放,比如关闭io操作 func doSomething(fileName string) 阅读全文
posted @ 2018-03-12 22:23 li-peng 阅读(2983) 评论(0) 推荐(1) 编辑
摘要: Devle是一个非常棒的golang 调试工具,支持多种调试方式,直接运行调试,或者attach到一个正在运行中的golang程序,进行调试。 线上golang服务出现问题时,Devle是必不少的在线调试工具,如果使用docker,也可以把Devle打进docker镜像里,调试代码。 安装Devle 阅读全文
posted @ 2018-03-07 16:11 li-peng 阅读(33411) 评论(4) 推荐(4) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 19 下一页
点击右上角即可分享
微信分享提示