首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
聊一聊Go
pixelpig
创建于2021-05-19
订阅专栏
博主对Go语言编程的一些理解和笔记收集。
等 14 人订阅
共14篇文章
创建于2021-05-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
聊一聊Go的原生高性能对象复用池sync.Pool
池化操作在计算机领域层出不穷,如连接池、线程\协程池、工作池,今天来聊一聊Go原生组件Sync.Pool。
聊一聊Go的协程信息和如何预防泄露
协程在Go里面是一个常见的概念,伴随着Go程序的生命周期开始至结束,今天来聊一聊Go的协程泄露。 关于协程的底层概念,GMP模型等,之前在前面文章已经作过分析...
聊一聊Go服务优雅下线与重启的实现
最近服务高可用的重要性越来越大,通常指的是通过故障转移到冗余模块,如主备切换等相应操作,用来保证系统对外提供可用性,而细化到程序下线/重启等操作该如何实现呢?
聊一聊Go网络框架Gin系列之(一)--中间件如何定制通用拦截器
网关中间件是事件流处理执行通道,它是请求流转控件,又叫middleware,常常用于作为请求头/请求体校验、缓存、限流等核心组件的关卡"安检"。
聊一聊Go实现的接口熔断器: Circuit Breaker
在微服务链路中,熔断是指在短时间内接口出现多次异常/超时(错误率过高),通过对接口快速失败,避免上游反复重试以至于下游被压垮的一种保护策略。
聊一聊Go实现的多协程下载器--gopeed-core
前言 之前在Github社区偶然发现一个Go实现的下载器,拉取了相关开源代码,期间进行调试与分析,作为个人学习的一个参照模板。
聊一聊Go网络编程(二)--TCP连接池管理
聊一聊Go网络编程--TCP连接管理(二) 上一篇我们聊到在Go中是如何发起一个TCP连接的,以及列举一个全双工的Demo,这次接着填补上一节留下的坑,连接池管理。
聊一聊Go网络编程(一)--TCP连接通信
Go标准库实现TCP交互的demo,使用通道交互以及常用API介绍,包括连接活性探测、长连接、网络io读写。
聊一聊堆、栈与Go语言的指针
堆、栈在计算机领域是亘古不变的热门话题,归根结底它们和编程语言无关,都是操作系统层面的内存划分,后面尝试简单地拆开这几个概念,谈谈我对它们的理解。 每个函数中每个值在栈中都是独占的,不能在其他栈中被访问。每个方法片(function frame)都有一个自己的独享栈,这个栈的生…
聊一聊操作系统线程调度与Go协程
我们计算机上面跑的每个任务,都是操作系统层面的资源分配,从启动进程到创建线程,在核数固定的情况下,多线程并发地执行。Go协程是一个比系统线程更细粒度的资源,轻量级和易切换。
聊一聊Go语言的error处理
Go语言的错误处理是一个常见的操作,经常可以见到一个函数返回错误类型(error),后续通过if err != nil来判断错误以及错误类型。 这一次尝试通过Go内置的error接口,我们聊一聊Go语言的错误处理以及Error的惯例用法。 我们先看Go的src/builtin内…
聊一聊Go编写的命令行工具类
Go原生在flag包提供了一个命令行工具类,它可以让我们执行类似命令行的赋参操作,经常被运用于工具类,特别是数据处理过程,可以方便我们进行参数可视化注解。 flag包提供了多个常用类型的赋值方法,如String, Int, Bool, Float64, Duration等。 下…
聊一聊Gin Web框架之前,看一眼httprouter
前言: Gin的词源是金酒, 又称琴酒, 是来自荷兰的一种烈性酒。 在Go中,有一个经常提及的web框架,就是gin web,具备高性能,可灵活定制化的特点,既然它是如此被看好,在深入了解它之前,不妨先看下他是基于什么实现的。 根据Git作者描述,Gin的高性能得益于一个叫ht…
聊一聊Go的Context上下文
前面在“聊一聊http框架httprouter”的时候,提到了上下文的概念,上一个demo用来列举web框架中全局变量的传值和设置,还类比了Java Spring框架中的ApplicationContext。 这一次我们就来聊一聊Go中的标准库的context,梳理上下文概念在…