![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
文章平均质量分 69
HapplyFox
这个作者很懒,什么都没留下…
展开
-
golang令牌桶算法实现之go-rate
go-rate是速率限制器库,基于 Token Bucket(令牌桶)算法实现。 go-rate被用在LangTrend的生产中 用于遵守GitHub API速率限制。速率限制可以完成一些特殊的功能需求,包括但不限于服务器端垃圾邮件保护、防止api调用饱和等。库使用说明构造限流器我们首先构造一个限流器对象:limiter := NewLimiter(10, 1);这里有两个参数:第一个参数是 r Limit。代表每秒可以向 Token 桶中产生多少 token。Limit 实际上是 flo原创 2021-04-06 13:31:58 · 869 阅读 · 4 评论 -
go每日一库 [home-dir] 获取用户主目录
关于我我的博客|文章首发顾名思义,go-homedir用来获取用户的主目录。实际上,通过使用标准库os/user我们也可以得到内容,使用以下方式标准库使用package mainimport ( "fmt" "log" "os/user")func main() { u, err := user.Current() if err != nil { log.Fatal(err) } fmt.Println("Home dir:", u.HomeDir)}控制台输出原创 2021-04-01 14:32:50 · 732 阅读 · 5 评论 -
Golang号称最快的Json解析器速度可达5623ns/op
关于我作者博客|文章首发golang对json序列化和反序列化的操作实在是难受,所以说用习惯了高级语言特性,再转到这些偏原生的写法上就会很难受。不多BB,开始记录。序列化库的选择当写个小demo或者做个小工具,没有大规模使用场景,那使用哪个库都是一样的,因为性能的体现并不会很明显。但是如果是在实际项目中使用,且伴随着高并发,大容量等场景,我还是推荐使用json-iterator。go自带json库"encoding/json" 官当自带json-iterator号称最快的go json解原创 2021-03-25 11:04:11 · 4334 阅读 · 4 评论 -
golang中多种方式设置时区
关于我文章首发 | 我的博客 | 欢迎关注go语言的time.Now()返回的是当地时区时间time.Now().Format("2006-01-02 15:04:05")time设置自定义时区var cstSh, _ = time.LoadLocation("Asia/Shanghai") //上海fmt.Println("SH : ", time.Now().In(cstSh).Format("2006-01-02 15:04:05"))LoadLocation 有个问题,它依赖于原创 2021-03-24 14:43:27 · 8280 阅读 · 7 评论 -
在vscode中go编码发生的问题整理
引言使用VsCode进行Go程序开发,我们肯定会碰到一些问题,这些问题有些是IDE的配置问题,有些是下载包的版本不一致问题,本文主要针对在开发过程中碰到的问题做一个简单的回顾和整理。前期准备,必看在进行问题纠错前,先确保自己正确下载了golang的官方工具集go-tool,如果不确定,就跟着我的步骤操作一遍,可能操作后,你的问题就解决了。1、配置golang的源。go env -w GOPROXY=https://goproxy.cn,direct然后我们进行golang工具的默认工具服务下载原创 2021-03-17 16:33:06 · 1219 阅读 · 11 评论 -
GoPath模式和GoMoudle模式的相爱相杀
相信看我文章的文章的童鞋,golang版本已经是1.3版本以上。如果你的版本还停留在1.3以下,那这篇文章可以做为你的提升之法。原创 2021-03-17 09:22:08 · 1315 阅读 · 15 评论 -
推荐一个yaml在线格式化网站
作者:三十三重天博客:zhouhuibo.clubYAML JavaScript parser.传送门END欢迎关注公众号 程序员工具集 ???????? 致力于分享优秀的开源项目、学习资源 、常用工具回复关键词“关注礼包”,送你一份最全的程序员技能图谱。回复关键词"wx"添加个人微信,勾搭作者,欢迎来聊-。...原创 2021-03-10 08:45:17 · 2130 阅读 · 1 评论 -
Json序列化在golang中的应用
作者:三十三重天博客:http://www.zhouhuibo.club通过学习和分享的过程,将自己工作中的问题和技术总结输出,希望菜鸟和老鸟都能通过自己的文章收获新的知识,并付诸实施。golang对json序列化和反序列化的操作实在是难受,所以说用习惯了高级语言特性,再转到这些偏原生的写法上就会很难受。不多BB,开始记录。序列化库的选择当写个小demo或者做个小工具,没有大规模使用场景,那使用哪个库都是一样的,因为性能的体现并不会很明显。但是如果是在实际项目中使用,且伴随着高并发,大容量等.原创 2021-03-09 15:14:53 · 268 阅读 · 2 评论 -
[cobra]-强大的CLI应用程序库
cobra介绍[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OHgDCZp4-1614132775488)(https://gitee.com/happlyfox/img/raw/master/image-20210218091620719.png)]Cobra是一个用于创建强大的现代CLI应用程序的库,也是一个用于生成应用程序和命令文件的程序。Cobra用于许多Go项目,如Kubernetes、Hugo和Github CLI等。此列表包含了使用Cobra的更广泛的项目原创 2021-02-24 10:13:34 · 515 阅读 · 2 评论 -
[cast]-go类型转换组件,怎么可以这么好用!
Cast介绍Cast是什么?Cast是一个库,以一致和简单的方式在不同的go类型之间转换。Cast提供了简单的函数,可以轻松地将数字转换为字符串,将接口转换为bool类型等等。当一个明显的转换是可能的时,Cast会智能地执行这一操作。它不会试图猜测你的意思,例如,你只能将一个字符串转换为int的字符串表示形式,例如“8”。Cast是为Hugo开发的,Hugo是一个使用YAML、TOML或JSON作为元数据的网站引擎。为什么使用Cast?在Go中处理动态数据时,通常需要将数据从一种类型转换为另一种类原创 2021-02-24 09:55:31 · 250 阅读 · 1 评论 -
now扩展-go的时间工具箱
title: ‘now扩展-go的时间工具箱’date: 2021-02-22 08:52:30author: 周慧博summary: Now 是一个为golang定制的时间工具箱categories: golangtags:nowdategolang不像C#,Java这种高级语言,有丰富的语法糖供开发者很方便的调用。所以这便催生出很多的开源组件,通过使用这些第三方组件能够帮助我们在开发过程中少踩很多的坑。时间处理是所有语言都要面对的一个问题,parse根据字符串转为date类型,.原创 2021-02-22 10:57:30 · 296 阅读 · 3 评论 -
go get下载包失败问题
由于某些不可抗力的原因,国内使用go get命令安装包时会经常会出现timeout的问题。本文介绍几个常用的解决办法。从github克隆golang在github上建立了一个镜像库,如https://github.com/golang/net就对应是 https://golang.org/x/net的镜像库。 要下载golang.org/x/net包,可以在本地创建包的目录后使用git clone来拉取相应包的源代码文件,具体操作如下:mkdir -p $GOPATH/src/golang.org/x原创 2021-02-19 17:08:48 · 334 阅读 · 1 评论