
golang常用库(Go Repositories)
文章平均质量分 80
🐦golang常用库
西京刀客
AI,Crypto/Web3.
A bug bounty hunting and a lot of coding is my passion!
展开
-
golang常用库之-swaggo/swag根据注释生成接口文档
swaggo/swag 是 Swagger API 2.0 在 go 语言中的一个实现,通过在书写指定格式的注释就可以生成swagger.json和swagger.yaml类型的接口文档,方便导出和导入。原创 2025-02-18 23:19:18 · 370 阅读 · 0 评论 -
golang常用库之-godotenv库从.env文件读取配置数据
godotenv库从.env文件中读取配置, 然后存储到程序的环境变量中。在代码中可以使用读取非常方便。原创 2024-06-23 09:52:45 · 834 阅读 · 0 评论 -
golang常用库之-KV数据库之pebble
rocksdb是一款由Facebook使用C/C++开发的嵌入式的持久化的KV数据库。Pebble 是 Cockroach 参考 RocksDB 并用 Go 语言开发的高性能 KV 存储引擎。原创 2024-06-18 21:28:05 · 2019 阅读 · 0 评论 -
golang常用库之-go-figure
图形打印美丽的 ASCII 艺术从文本。它支持 FIGlet 文件,和它的大部分功能。原创 2024-06-16 13:27:25 · 411 阅读 · 0 评论 -
golang常用库之-VMware vSphere API govmomi简介(go操作ESXi)
govmomi: 是 VMware vSphere API 的 GO 库,用于与VMware vSphere API(ESXi和/或vCenter)进行交互。原创 2021-05-21 15:42:53 · 520 阅读 · 0 评论 -
golang常用库之- encoding/binary包 | 字节转换成整形、整形转换成字节、“大字端” 和 “小字端”
encoding/binary包相对于效率更注重简单。 如果需要高效的序列化,特别是数据结构较复杂的,可以选择更高级的解决方案**, 例如encoding/gob包(Go语言自带的数据编码解码工具包),或者采用ProtocolBuffer(跨语言)。原创 2023-02-22 01:00:00 · 1929 阅读 · 0 评论 -
golang常用库之-web框架搭建restful api服务 gin-gonic/gin
Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确。对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错。框架更像是一些常用函数或者工具的集合。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。原创 2023-01-22 12:26:19 · 1198 阅读 · 0 评论 -
golang常用库之-操作redis go-redis/redis库、 go-redsync/redsync库(redis分布式锁)
golang常用库之-操作redis go-redis库redsync是redis官方推荐的go版本分布式锁实现,标准的官方redlock算法实现...原创 2022-11-02 23:13:11 · 2341 阅读 · 0 评论 -
golang-json构建和解析:Marshal与Unmarsha、json转换为map
Json(Javascript Object Nanotation)是一种数据交换格式,常用于前后端数据传输。任意一端将数据转换成json 字符串,另一端再将该字符串解析成相应的数据结构,如string类型,strcut对象等。go语言本身为我们提供了json的工具包”encoding/json”。原创 2022-10-14 21:22:10 · 2377 阅读 · 0 评论 -
golang常用库之-ants包 | golang协程池(goroutine池)
ants是一个高性能的 goroutine 池,实现了对大规模 goroutine 的调度管理、goroutine 复用,允许使用者在开发并发程序的时候限制 goroutine 数量,复用资源,达到更高效执行任务的效果。ants的 Goroutine Pool 的容量是可以自定义的,也就是说使用者可以根据不同场景对这个参数进行调优直至达到最高性能。自动调度海量的 goroutines,复用 goroutines定期清理过期的 goroutines,进一步节省资源。原创 2022-10-12 22:15:45 · 5148 阅读 · 0 评论 -
golang常用库之- pierrec/lz4包 | lz4命令、lz4压缩算法(高压解速度)
lz4是目前综合来看效率最高的压缩算法,更加侧重压缩解压速度,压缩比并不是第一。原创 2022-10-06 06:45:00 · 2763 阅读 · 0 评论 -
golang常用库之-go.uber.org/automaxprocs包 | 容器里如何获取真正可使用的CPU核心数
GOMAXPROCS 在 Go 1.5 版本后的默认值是机器的 CPU 核数 (runtime.NumCPU)。而以 Docker 为代表的容器虚拟化技术,会通过 cgroup 等技术对 CPU 资源进行隔离。这类技术对 CPU 的隔离限制,导致 runtime.NumCPU() 无法正确获取到容器被分配的 CPU 资源数。原创 2022-10-03 12:31:41 · 2204 阅读 · 0 评论 -
golang常用库之mapstructure包 | 多json格式情况解析、GO json 如何转化为 map 和 struct、Go语言结构体标签(Struct Tag)
Go library for decoding generic map values into native Go structures and vice versa.原创 2022-10-01 09:28:44 · 4374 阅读 · 0 评论 -
golang常用库之-kelseyhightower/envconfig | 读取和设置环境变量、根据环境变量填充指定的结构
使用os包可以很容易的设置和读取环境变量。第三方库envconfig使用结构体tag将环境变量映射给结构体的方式很方便。原创 2022-09-28 23:00:00 · 918 阅读 · 0 评论 -
golang常用库之标准库os/signal | go 服务器如何优雅的退出
golang中对系统信号的处理主要使用标准库的 os/signal包。原创 2022-09-28 01:30:00 · 372 阅读 · 0 评论 -
golang常用库之-pkg/term包、moby.term包、go-runewidth包 | 返回用户终端的当前宽度和高度、获取字符或字符串的固定宽度 | 基于文本的界面的库ui
常用于命令行程序最大给定列数打印给定名称命令行标志集。根据终端列长度,调试命令行打印的格式。原创 2022-09-27 23:30:00 · 1246 阅读 · 0 评论 -
golang常用库之-配置文件解析 spf13/viper包 | 解析&加载配置
在我们开发过程中,像数据库信息、邮件配置和其他的第三方服务密钥等这些固定的信息都会写在配置文件中,而配置文件又有多种表现形式和格式,有 JSON, TOML, YAML各种格式,而且测试环境,开发环境和生产环境用的配置文件也不是同一份。我们需要一个go 库可以做这件事!原创 2022-09-25 22:14:38 · 1843 阅读 · 0 评论 -
golang常用库之-go net包 | golang实现udp 服务器、客户端 | UDP基础(PPS)| 微软开源的支持多平台多协议的网络性能检测工具 Ethr
golang提供了网络编程使用net包,使用net包可以进行很基础的socket编程。由于UDP是“无连接”的,所以,服务器端不需要额外创建监听套接字,只需要指定好IP和port,然后监听该地址,等待客户端与之建立连接,即可通信。原创 2022-09-25 08:22:30 · 1545 阅读 · 2 评论 -
golang常用库之olivere elastic包 | go操作elasticsearch
Elastic是GO编程语言的Elasticsearch的客户端。自2012年以来,我们在生产中使用它。它支持Elasticsearch版本1.x,2.x,5.x,6.x和7.x。原创 2022-08-04 10:06:37 · 3165 阅读 · 0 评论 -
golang常用库之-vmihailenco/msgpack包(二进制Json序列换与反序列化)
MessagePack是一种有效的二进制序列化格式。它使您可以在JSON等多种语言中交换数据。但是它更快,更小。小整数被编码为单个字节,典型的短字符串除了本身之外,仅需要一个额外的字节。原创 2022-07-13 22:53:28 · 1349 阅读 · 0 评论 -
golang常用库之-标准库 sync包| go语言如何实现单例模式、读写锁(sync.RWMutex)
Golang sync包提供了基础的异步操作方法,包括互斥锁Mutex,执行一次Once和并发等待组WaitGroup。原创 2022-04-16 20:15:23 · 1229 阅读 · 0 评论 -
Go (Golang) 工具之copyright 添加 | go源码添加授权头
自动在一个或多个源代码文件的顶部插入指定的许可证文件或版权信息。原创 2022-04-07 07:05:54 · 2167 阅读 · 0 评论 -
Go (Golang) 工具之单元测试 go-junit-report | go的单元测试
go-junit-report是一种将`go test` 输出转换为XML报告的工具,适用于预期JUnit-Style XML报告(例如Jenkins)的应用程序。原创 2022-04-06 21:15:08 · 3649 阅读 · 0 评论 -
Go (Golang) 工具之Golang格式化程序golines | 使用 golines 简洁您的 go 代码
Golines是一个Golang格式化程序,除了由`gofmt`完成的所有格式修复外,缩短了长行。原创 2022-04-05 22:59:43 · 1925 阅读 · 0 评论 -
Go (Golang) 工具之自动化版本工具 gsemver | semver 语义化版本规范
gsemver 是在Go(golang)中开发的命令行工具,它使用Git commit 自动化生成兼容Semver 2.0.0规范的下一 个版本。原创 2022-04-05 07:12:57 · 1944 阅读 · 1 评论 -
使用Go Fiber构建微服务
使用Go Fiber构建微服务Building microservices in Go with FiberFiber仓库:https://github.com/gofiber/fiberWritten by Subha Chanda✏️作者: Subha原创 2022-03-28 22:45:00 · 2452 阅读 · 0 评论 -
golang常用库之-命令行参数解析spf13/pflag包 | 标准库 flag包
pflag是Go的flag包的直接替代,实现了POSIX / GNU样式的–flags。pflag是Go的本机标志包的直接替代。如果您在名称“ flag”下导入pflag,则所有代码应继续运行且无需更改。原创 2022-03-27 20:10:10 · 2482 阅读 · 0 评论 -
golang常用库之-文件操作(os、path、filepath、ioutil包)、Go 读文件、Go 写文件
Go官方提供的文件操作标准库分散在os、ioutil等多个包中,里面有非常多的方法涵盖了文件操作的所有场景.原创 2022-03-27 12:51:25 · 7479 阅读 · 0 评论 -
golang常用库之-uuid相关库(satori/go.uuid、google/uuid)
文章目录golang常用库之-uuid相关库golang中的uuid还没有纳入标准库,因此我们使用github上的开源库原创 2022-03-25 21:14:42 · 2859 阅读 · 0 评论 -
golang常用库之-pkg/errors包 第三方错误处理包 | golang如何打印错误(error)堆栈
文章目录golang常用库之-pkg/errors包背景关于官方errors包官方errors包使用demo什么是pkg/errors包pkg/errors包使用demo参考golang常用库之-pkg/errors包背景golang自带了错误信息包error只提供了简单的用法, 如errors.New(),和errors.Error()用来传递和获取错误信息.明显官方的包已经不能满足了, 只能采取其他方法补救, 如:采用三方errors包。关于官方errors包Go 语言使用 error原创 2022-03-22 21:31:02 · 5213 阅读 · 0 评论 -
golang常用库之http客户端-Sling、标准库net/http包 | go标准库mime/multipart
golang http客户端golang net/http包golang的net/http包已经提供了强大了网络操作函数。golang使用http client发起get和post请求示例原创 2022-03-20 22:53:24 · 7783 阅读 · 0 评论 -
golang常用库之-命令行终端输出颜色 fatih/color
文章目录golang常用库之-命令行终端输出颜色 fatih/color什么是fatih/color使用golang常用库之-命令行终端输出颜色 fatih/color什么是fatih/colorhttps://github.com/fatih/colorfatih/color是用于输出对应编码颜色的包。color 可以让你根据 Go 中的ANSI 转义码 使用彩色输出。它也支持 Windows!彩色输出可以直观的区分信息、突出重点,也可以美化终端显示效果。原创 2022-03-18 19:41:43 · 3138 阅读 · 0 评论 -
golang常用库之-命令行工具 Cobra(眼镜蛇)
文章目录golang常用库之-命令行工具 cobra项目作者cobraCobra提供的功能概念golang命令行库cobra的使用golang常用库之-命令行工具 cobraspf13/cobra 和 urfave/cli 是Go的2个优秀命令行工具:名称star仓库地址应用项目spf13/cobra25.6khttps://github.com/spf13/cobradocker, kubernetes, istio, hugo …urfave/cli17.5k原创 2022-03-16 22:31:05 · 19910 阅读 · 0 评论 -
golang常用库之-命令行工具urfave/cli(gopkg.in/urfave/cli.v2)
Go语言命令行库-urfave/cli很多用Go写的命令行程序都用了urfave/cli这个库。urfave/cli是一个命令行的框架。用C写过命令行程序的人应该都不陌生,我们需要根据argc/argv一个个地解析命令行参数,调用不同的函数,最后还要写一个usage()函数用于打印帮助信息。urfave/cli把这个过程做了一下封装,抽象出flag/command/subcommand这些模块,用户只需要提供一些模块的配置,参数的解析和关联在库内部完成,帮助信息也可以自动生成。总体来说,urfave/原创 2020-05-31 18:21:59 · 4396 阅读 · 0 评论 -
golang常用库之-日志框架包 zap库、go-log 库、golong 日志框架选型 logrus还是uber zap?
在 Go 项目开发中,我们可以通过修改一些优秀的开源日志包,来实现项目的日志包。Go 生态中有很多优秀的开源日志包,例如标准库 log 包、glog、logrus、zap、seelog、zerolog、log15、apex/log、go-logging 等。其中,用得比较多的是标准库 log 包、glog、logrus 和 zap。原创 2021-05-31 11:31:40 · 1506 阅读 · 0 评论