会员
T恤
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
踏雪无痕
不忘初心,方得始终!
博客园
首页
新随笔
联系
订阅
管理
随笔 - 274
文章 - 0
评论 - 90
阅读 -
140万
2022年10月24日
【Golang】通过Go Ballast 控制内存来优化性能
摘要: 一、关于 Go GC 优化的手段 设置 GOGC / debug.SetGCPercent() 这两种方式的原理和效果都是一样的,GOGC 默认值是 100,也就是下次 GC 触发的 heap 的大小是这次 GC 之后的 heap 的一倍。GO 的 GC 是标记-清除方式,当 GC 会触发时全量遍历
阅读全文
posted @ 2022-10-24 00:36 踏雪无痕SS
阅读(761)
评论(0)
推荐(0)
2022年10月7日
【Golang】关于Go语言中条件变量 sync.Cond
摘要: 一、sync.Cond 的使用场景 一句话总结:sync.Cond 条件变量用来协调想要访问共享资源的 那些 goroutine,当共享资源的状态发生变化的时候,它可以用来通知被互斥锁阻塞的 goroutine。 1、sync.Cond 基于互斥锁/读写锁,它和互斥锁的区别是什么呢? 互斥锁 syn
阅读全文
posted @ 2022-10-07 23:02 踏雪无痕SS
阅读(869)
评论(0)
推荐(0)
【Golang】关于Go语言中逃逸分析
摘要: 一、堆内存与栈内存 堆(Heap):一般来讲是人为手动进行管理,手动申请、分配、释放。堆适合不可预知大小的内存分配,这也意味着为此付出的代价是分配速度较慢,而且会形成内存碎片。 栈(Stack):由编译器进行管理,自动申请、分配、释放。一般不会太大,因此栈的分配和回收速度非常快;我们常见的函数参数(
阅读全文
posted @ 2022-10-07 15:49 踏雪无痕SS
阅读(778)
评论(0)
推荐(0)
2022年10月4日
【Golang】关于Go语言中如何控制goroutine的数量
摘要: 一、现状 在Go语言中,goroutine的创建成本很低,调度效率高,Go语言在设计时就是按以数万个goroutine为规范进行设计的,数十万个并不意外,但是goroutine在内存占用方面确实具有有限的成本,你不能创造无限数量的它们,比如这个例子: ch := generate() go func
阅读全文
posted @ 2022-10-04 00:10 踏雪无痕SS
阅读(1198)
评论(0)
推荐(0)
2022年10月2日
【Golang】 关于Go语言垃圾回收的历史进程
摘要: 垃圾回收历史进程 一、为什么选择标记清除 1、判断对象存活的思路 在 GC 领域里,判断对象存活的主流思路是两个,「引用计数」和「可达性分析」。 2、引用计数 顾名思义,引用计数的思路就是给每个对象进行计数,每被其它对象引用一次,计数就 +1,引用失效后,计数就 -1。当计数器的数值为 0,就意味着
阅读全文
posted @ 2022-10-02 21:07 踏雪无痕SS
阅读(277)
评论(0)
推荐(0)
【K8S】Kubernetes控制器Controller-RS/Deployment/HPA详解
摘要: 一 、介绍 Pod是kubernetes的最⼩管理单元,在kubernetes中,按照pod的创建方式可以将其分为两类: 自主式pod:kubernetes直接创建出来的Pod,这种pod删除后就没有了,也不会重建 控制器创建的pod:kubernetes通过控制器创建的pod,这种pod删除了之后
阅读全文
posted @ 2022-10-02 16:19 踏雪无痕SS
阅读(250)
评论(0)
推荐(0)
【Golang】关于Go语言中使用gRPC的使用
摘要: 一、gRPC介绍 gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。 gRPC有四种服务方法: Unary RPCs,一元RPC。客户端发送一个请求到服务端,服务端响应一个请求。 r
阅读全文
posted @ 2022-10-02 16:15 踏雪无痕SS
阅读(422)
评论(0)
推荐(0)
【Golang】关于Go语言中Slice扩容策略
摘要: 一、概述 当切片的容量不足时,我们会调用 runtime.growslice 函数为切片扩容,扩容是为切片分配新的内存空间并拷贝原切片中元素的过程,我们先来看新切片的容量是如何确定的,使用的是 growslice 函数 func growslice(et *_type, old slice, cap
阅读全文
posted @ 2022-10-02 11:24 踏雪无痕SS
阅读(597)
评论(1)
推荐(1)
2022年9月27日
【Golang】PHP转Go强大的工具库
摘要: PHP 的朋友应该会被 PHP 中两大特性折服: 1、强大的 array,一切皆Array; 2、强大的函数库,函数类型非常丰富。 一、简单示例 1、例如:md5函数 Go版本写法: package main import ( "crypto/md5" "fmt" "io" ) func Md5(s
阅读全文
posted @ 2022-09-27 20:04 踏雪无痕SS
阅读(449)
评论(0)
推荐(0)
【Golang】关于Golang中一些优秀的类库
摘要: 一、CLI 命令(spf13/cobra) GitHub地址:https://github.com/spf13/cobra Cobra既是一个创建强大的现代CLI应用程序的库,也是一个生成应用程序和命令的程序。可以使用这个库来管理命令应用程序,执行runner应用程序,初始化配置,病启动Reast
阅读全文
posted @ 2022-09-27 19:24 踏雪无痕SS
阅读(287)
评论(0)
推荐(0)
2022年9月26日
【Golang】关于Map扩容策略
摘要: 一、概括 使用哈希表的目的就是要快速查找到目标 key,然而,随着向 map 中添加的 key 越来越多,key 发生碰撞的概率也越来越大。bucket 中的 8 个 cell 会被逐渐塞满,查找、插入、删除 key 的效率也会越来越低。最理想的情况是一个 bucket 只装一个 key,这样,就能
阅读全文
posted @ 2022-09-26 18:13 踏雪无痕SS
阅读(1469)
评论(0)
推荐(1)
【Golang】关于Golang中的热加载
摘要: 一、热加载是什么 热加载:当我们对代码进行修改时,程序能够自动重新加载并执行,这在我们开发中是非常便利的,可以快速进行代码测试,省去了每次手动重新编译。 二、使用Air进行热加载 地址:https://github.com/cosmtrek/air 具有以下特性: 彩色日志输出 自定义构建或二进制命
阅读全文
posted @ 2022-09-26 18:10 踏雪无痕SS
阅读(2021)
评论(0)
推荐(1)
2022年5月30日
【Golang】 关于Go 并发之三种线程安全的 map
摘要: 一、map 是什么 map 是 Go 中用于存储 key-value 关系数据的数据结构,类似 C++ 中的 map,Python 中的 dict。Go 中 map 的使用很简单,但是对于初学者,经常会犯两个错误:没有初始化,并发读写。 1、未初始化的 map 都是 nil,直接赋值会报 panic
阅读全文
posted @ 2022-05-30 00:08 踏雪无痕SS
阅读(6631)
评论(0)
推荐(0)
【Golang】关于Go中一些常用的知识介绍
摘要: 一、哪些类型可以作为map的key ? 1、可比较的类型都可以作为map key boolean 布尔值 numeric 数字 包括整型、浮点型,以及复数 string 字符串 pointer 指针 两个指针类型相等,表示两指针指向同一个变量或者同为nil channel 通道 两个通道类型相等,表
阅读全文
posted @ 2022-05-30 00:07 踏雪无痕SS
阅读(131)
评论(0)
推荐(0)
2022年5月28日
【Golang】关于Go中的struct{}
摘要: 一、关于struct {} struct是Go中的关键字,用于定义结构类型 type User struct { Name string Age int } struct {} :表示struct类型 struct {} 是一种普通数据类型,一个无元素的结构体类型,通常在没有信息存储时使用。 优点是
阅读全文
posted @ 2022-05-28 20:25 踏雪无痕SS
阅读(882)
评论(0)
推荐(0)
下一页
公告
昵称:
踏雪无痕SS
园龄:
14年2个月
粉丝:
238
关注:
2
+加关注
<
2025年4月
>
日
一
二
三
四
五
六
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
搜索
积分与排名
积分 - 531171
排名 - 1271
随笔分类
(294)
C/C++(11)
Devops(4)
Discuz(2)
GoLang(23)
Java(1)
JS/HTML/CSS(15)
kubernetes(4)
LINUX(66)
Mongodb(5)
MYSQL(45)
NGINX(25)
PHP(70)
REDIS(17)
架构(2)
云计算(4)
更多
随笔档案
(274)
2022年10月(8)
2022年9月(4)
2022年5月(5)
2022年4月(2)
2021年10月(7)
2020年10月(1)
2020年7月(1)
2020年2月(1)
2020年1月(1)
2019年8月(2)
2019年6月(1)
2019年5月(4)
2019年4月(4)
2019年3月(1)
2019年1月(2)
2018年11月(5)
2018年9月(1)
2018年8月(1)
2018年7月(1)
2018年6月(1)
2018年5月(2)
2018年3月(2)
2018年2月(1)
2017年12月(2)
2017年11月(3)
2017年8月(2)
2017年6月(1)
2017年5月(2)
2017年4月(2)
2017年3月(3)
2017年2月(1)
2016年12月(1)
2016年11月(5)
2016年10月(1)
2016年9月(1)
2016年8月(7)
2016年7月(1)
2016年6月(6)
2016年4月(2)
2016年3月(5)
2016年2月(3)
2016年1月(14)
2015年12月(20)
2015年11月(22)
2015年10月(23)
2015年9月(29)
2015年8月(18)
2015年7月(13)
2015年6月(12)
2015年5月(16)
2011年11月(1)
更多
阅读排行榜
1. 关于Tcpdump抓包总结(98622)
2. 【mysql】关于innodb中MVCC的一些理解(52674)
3. 关于Redis数据过期策略(52264)
4. 【Linux】小米路由开启SSH访问权限(43597)
5. HTTP状态码206和416(39891)
推荐排行榜
1. 关于Redis数据过期策略(10)
2. 【linux】free命令中cached和buffers的区别(8)
3. 【mysql】关于checkpoint机制(8)
4. 关于Tcpdump抓包总结(7)
5. 关于Redis持久化(7)
点击右上角即可分享