首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
go
订阅
益达_快慢机
更多收藏集
微信扫码分享
微信
新浪微博
QQ
77篇文章 · 1订阅
降低 80% 的读写响应延迟!我们测评了 etcd 3.4 新特性(内含读写发展史)
etcd 是 Kubernetes 集群中存储元数据,保证分布式一致性的组件,它的性能往往影响着整个集群的响应时间。而在 K8s 的使用中,我们发现除了日常的读写压力外,还存在某些特殊的场景会对 etcd 造成巨大的压力,比如 K8s 下 apiserver 组件重启或是其他组…
由浅到深,入门Go语言Map实现原理
把自己学习知识进行一个总结。同时把一些可能困难、复杂难以理解的东西自我消化吸收后,简单化输出,降低他人的学习成本,提高他人的学习效率,主要为如下两点: 其次,或多或少存在自己学习过程中理解不到位或者错误的地方希望大家可能及时帮我纠正,感谢以及说一声抱歉。 今天要分享的是主要内容…
业务压力一大就宕机?一文带你搞懂限流熔断!
在 《微服务的战争:级联故障和雪崩》中有提到,在一个分布式应用中,最常见,最有危险性之一的点就是级联故障所造成的雪崩,而其对应的解决方案为根据特定的规则/规律进行流量控制和熔断降级,避免请求发生堆积,保护自身应用,也防止服务提供方进一步过载。 简单来讲就是,要控制访问量的流量,…
Golang源码分析系列之官方Context包
Context是由Golang官方开发的并发控制包,一方面可以用于当请求超时或者取消时候,相关的goroutine马上退出释放资源,另一方面Context本身含义就是上下文,其可以在多个goroutine或者多个处理函数之间传递共享的信息。 创建一个新的context,必须基于…
图解Go内存管理器的内存分配策略
在Go语言里,从内存的分配到不再使用后内存的回收等等这些内存管理工作都是由Go在底层完成的。虽然开发者在写代码时不必过度关心内存从分配到回收这个过程,但是Go的内存分配策略里有不少有意思的设计,通过了解他们有助于我们自身的提高,也让我们能写出更高效的Go程序。 Go内存管理的设…
Golang调度器的GMP模型
一般来说,并发对应在单个处理器,通过串行的时间片分配(time slice)来执行任务。而并发,对应多个处理器,来执行不同的任务。 Golang中,执行多个任务时,Goroutine会创建不同的线程,也会将任务单元分配给其他线程来执行,这像是并发和并行的结合,能够最大化执行效率…
k8s使用的web框架:go-restful 源码分析
go-restful是一个用go语言开发的快速构建restful风格的web框架。k8s最核心的组件kube-apiserver使用到了该框架,该框架的代码比较精简,这里做个简单的功能介绍,然后分析相关源码。 想要揭开答案,让我们一起分析下源码吧。在这之前,还是建议先看下本人之…
图解Golang channel源码
先上一张channel布局图,channel的底层实际上并不复杂,没有用到很高深的知识,主要是围绕着一个环形队列和两个链表展开。相信你看完本篇文章一定能掌握channel的实现。 channel使用的make、<- 等符号,在源码中没有对应的实现,而是通过编译器将相关…
Golang 之 struct能不能比较
运行上面的代码发现会打印false。既然能正常打印输出,说明是可以个比较的,接下来让我们来个「死亡两问」 回到上面的划重点部分,在总结中我们可以知道,golang中 Slice,Map,Function 这三种数据类型是不可以直接比较的。我们再看看S结构体,该结构体并没有包含不…
你真的懂 golang reslice 吗
第一感觉: 肯定能编译过, 但是运行时一定会panic的. 但事与愿违竟然能够正常运行, 结果是:[] 其实主要关心这两行即可. 是不是很神奇, a[1:] 没有调用runtime.panicSliceB(SB), 而是返回的是一个空的slice. 这是为何呢? 持着怀疑态度,…