包含标签 goblog 的文章

Go杂谈 | 高效数据编解码

序列化和反序列化贯穿于微服务系统之间,如何简单高效的处理数据变的异常重要。常见的数据编解码方案中Protobuf、Avro等算是其中的佼佼者。出色的编解码方案都有哪些特点呢?以及还有没有性能更优或者使用更简单的方法呢?我们来探究一下。 Varint & Zigzag Varint varint用每个字节的第1位来标识本字节是否是一 ………

阅读全文

Go杂谈 | Protobuf、MsgPack等常见协议

JSON以其清晰明快横行,但网络大批量传输数据,序列化反序列化的场景下,和Protobuf这种数据传输协议相比,性能却不尽人意。为了解决JSON编解码性能差的问题,MsgPack给了我们新的选择。 JSON协议 菜鸟教程:https://www.runoob.com/json/json-syntax.html JSON 的两种结构: 1、 ………

阅读全文

Go杂谈 | err hell

被人吐槽最多的 if err != nil 参考阅读: https://mp.weixin.qq.com/s/L_Sy4_6BURL4XWDK6bpEwg https://mp.weixin.qq.com/s/XILveKzh07BOQnqxYDKQsA ………

阅读全文

Go特性 | 语言新变化

go1.20 变化 Free Member 为了提高Go的广泛适用性,给少数极端场景预留更多可发挥的空间。新版Go可以由程序员自己管理内存了。谁申请,谁释放。 当然,目前还没在正式发布版本中支持,需要特殊参数启动选项。参考代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ………

阅读全文

Go安装 | Golang环境配置

Linux上安装golang 上https://golang.google.cn/dl/下载对应的包,整体放入/usr/local下面,然后解压缩,删除压缩包,添加环境变量,应用设置使生效。下面是操作命令。 1 2 3 4 5 6 7 8 9 10 11 # 下载对应的包,放入/usr/local/并解压 wget ………

阅读全文