Golang

  • 被 “ 困 ” 京城的时间里,我的CMDB的项目完成了雏形

    2020年一场疫情打乱了很多人的节奏,我也因此第一次在北京过年了。 过年的这段时间,因约景点的时间有点晚了,所以很多的景点都没有去成,因此我基本上是在北京的出租房里憋了一个假期。 去年,也就是2020年,我开源…

    2021年2月18日
    04.9K26
  • 减小 Go 代码编译后的二进制体积

    基线用例 减小编译后的二进制的体积,能够加快程序的发布和安装过程。接下来呢,我们分别从编译选项和第三方压缩工具两方面来介绍如何有效地减小 Go 语言编译后的体积。 我们采用同一个测试工程来测试不同方式的效果…

    Golang 2021年1月5日
    12.0K1
  • Micro v3 入门教程

    本文翻译自官网。 本文将通过全球入门实例 Hello World 的方式,来带领大家入门Micro v3。 依赖关系 Micro 是通过 protoc-gen-micro 来进行代码生成的,因此我们需要安装上对应的依赖库。 protobufprotoc-gen-goprot…

    Golang 2020年12月31日
    05.4K1
  • Go 语言多版本管理工具 g (推荐)

    g 是一个Linux、macOS、Windows下的命令行工具,可以提供一个便捷的多版本go环境的管理和切换。 特性 支持列出可供安装的go版本号支持列出已安装的go版本号支持在本地安装多个go版本支持卸载已安装的go版本支持在已…

    Golang 2020年12月30日
    04.3K0
  • Go 语言多版本管理工具 GVM

    Golang 发展迅速,代码迭代非常快,想要在同一环境调试和梳理不同项目进程就成了一件相对棘手的事情。二进制文件的管理比较简单,通过链接使用不同版本的程序即可。实际上主要是一些环境变量和标准库的设置问题…

    Golang 2020年12月30日
    02.4K0
  • ProtoBuf 入门教程

    在网络通信和通用数据交换等应用场景中经常使用的技术是 JSON 或 XML,本教程介绍另外一个数据交换的协议的工具ProtoBuf。 快速入门 简介 protocol buffers (ProtoBuf)是一种语言无关、平台无关、可扩展的序列化结…

    2020年12月30日
    04.3K0
  • gRPC快速入门

    RPC算是近些年比较火热的概念了,随着微服务架构的兴起,RPC的应用越来越广泛。本文介绍了RPC和gRPC的相关概念,并且通过详细的代码示例介绍了gRPC的基本使用。 RPC是什么 在分布式计算,远程过程调用(英语:Remote…

    2020年11月27日
    02.0K0
  • Goroutine Leak和解决之道

    概述 在Go中,goroutine很轻量级,随便创建成千上万个goroutine不是问题,但要注意,要是这么多的goroutine一致递增,而不退出,不释放资源,可就麻烦了。 本文介绍goroutine泄露的实际场景,并讨论如何解决该问题。…

    Golang 2020年10月22日
    01.3K0
  • Protobuf 终极教程 (Go语言版本)

    Protocol Buffer (简称Protobuf) 是Google出品的性能优异、跨语言、跨平台的序列化库。 历史 2001年初,Protobuf首先在Google内部创建, 我们把它称之为 proto1,一直以来在Google的内部使用,其中也不断的演化…

    2020年9月18日
    01.4K0
  • 常用限流策略———漏桶与令牌桶介绍

    限流又称为流量控制(流控),通常是指限制到达系统的并发请求数,本文列举了常见的限流策略,并以gin框架为例演示了如何为项目添加限流组件。 限流 限流又称为流量控制(流控),通常是指限制到达系统的并发请求数…

    2020年9月13日
    02.4K0