如何一步步提升Go内存缓存性能

本文记录了ecachev1.0.5到v1.1.0的性能优化过程背景介绍ecache是一款极简设计、高性能、并发安全、支持分布式一致性的轻量级内存缓存,支持LRU和LRU-2两种模式项目地址:https://github.

终于找到了一款我喜欢的安装和管理 Go 版本的工具

这个工具才出来十几天,试用下来,还存在一些问题:安装最新版本,需要知道当前最新版本是哪个?不过我已经给作者提了 issue,应该很快就会支持;

Go 语言反射的实现原理

反射是 Go 语言比较重要的一个特性之一,虽然在大多数的应用和服务中并不常见,但是很多框架都依赖 Go 语言的反射机制实现一些动态的功能。

google的protobuf这么火,Go是如何实现protobuf编解码的?—原理

这是一篇姊妹篇文章,浅析一下Go是如何实现protobuf编解码的:Go是如何实现protobuf的编解码的(1): 原理Go是如何实现protobuf的编解码的(2): 源码本编是第一篇。

10分钟将你的Go工程转换为Go Module模式

步骤五: 加入GoCenter在构建过程中,您可能会注意到许多go get命令在etcd的不同阶段执行。

Go gRPC 客户端服务保障如何做?负载均衡、重试、健康检查

本文作者:杨锡坤原文链接:http://yangxikun.com/golang/2019/10/19/golang-grpc-client-side-lb.htmlGo gRPC 客户端是如何管理与服务端的连接的? grpc.

Go语言入门必知教程-循环语句

for循环用于迭代序列(即切片、数组、映射或字符串)。作为一种与C族相关的语言,Golang支持for循环风格的控制结构。Golang没有while循环,因为for循环在与单个条件一起使用时具有相同的功能。for语句当你提前知道代码块要执行多少次的时候使用for循环。

用 Go + WebSocket 快速实现一个chat服务

前言在 go-zero 开源之后,非常多的用户询问是否可以支持以及什么时候支持 websocket,终于在 v1.1.

【Golang 基础】Go 语言中的基本类型

Go语言中的基础类型在Go编程语言中,数据类型用于声明函数和属性。数据类型的出现时为了把数据分成所需要用大数据的时候才需要申请大内存,这样可以充分的列用内存。

goroutine 和 channel 是 Go 最大的优势,但不可滥用

我以前觉得使用 goroutine 和 channel 的性能开销是基本忽略不计的–尤其是和 IO 的性能开销相比–但是最近我做了一个实验,实际验证了下。我在给我的课程项目做一个玩具相关的数据库。一开始,我从 CSV 文件里加载数据表,后来我需要添加一个二进制的表格结构。