首页 > 其他分享 >Golang 常用工具记录

Golang 常用工具记录

时间:2023-12-24 20:13:01浏览次数:46  
标签:github get com 记录 redis kafka Golang go 常用工具

Golang 常用工具记录

1 golang 类

1.1 日常使用的

copier

复制结构体到另外一个结构体 等等类似的功能

asynq

Go中简单、可靠、高效的分布式任务队列,使用 redis 做为 broker

machinery

Machinery是基于分布式消息传递的异步任务队列/作业队列。

resty

resty是 Go 语言的一个 HTTP client 库。resty功能强大,特性丰富。它支持几乎所有的 HTTP 方法。(GET/POST/PUT/DELETE/OPTION/HEAD/PATCH等),并提供了简单易用的 API。

1.2 日志包

sirupsen/logrus

go get github.com/sirupsen/logrus

golang 的日志包

uber-go/zap

go get -u go.uber.org/zap

golang 的日志包

1.3 配置文件解析

go-ini/ini

go get gopkg.in/ini.v1

ini 配置文件解析工具

spf13/viper

go get github.com/spf13/viper

golang 的配置文件解析工具,支持多种格式,常用这个

2 grpc 类

grpcui

调试grpc服务的工具

sql2pb

将数据库中的表转成 proto 文件,go-zero-looklook就用到了这个工具

3 web框架

gin-gonic/gin

go get -u github.com/gin-gonic/gin

http 框架

gorilla/websocket

go get github.com/gorilla/websocket

websocket 库

据说性能低,每次 write 都要加锁,无法并发写入,不支持go 上下文特性,据说还会导致连接不会释放? 这个还不确定哦!!!

nhooyr/websocket

go get nhooyr.io/websocket

websocket 库,后面项目中用到,可以试试这个

4 跟数据库打交道的

4.1 sql 类

go-gorm/gorm

go get -u github.com/jinzhu/gorm

golang 的 orm 框架

gormt

mysql数据库转 struct 工具,可以将mysql数据库自动生成golang sturct结构,带大驼峰命名规则。带json标签

squirrel

Go 的流畅 SQL 生成器 

4.2 no sql 类

mongo-go-driver

go get go.mongodb.org/mongo-driver/mongo

mongodb 的驱动器

go-redis/redis

# redis6.X
go get github.com/go-redis/redis/v8

# redis7.x
go get github.com/go-redis/redis/v9

5 跟消息队列 打交道的

5.1 kafka 类

segmentio/kafka-go

go get github.com/segmentio/kafka-go

kafka 客户端,有个现象,同步生产很慢,但是异步生成就很快。
go-queue中的kq 就是用的 kafka-go

confluentinc/confluent-kafka-go

go get -u github.com/confluentinc/confluent-kafka-go/kafka

kafka 客户端。go 调 c++的库,性能强,就是编译麻烦些

标签:github,get,com,记录,redis,kafka,Golang,go,常用工具
From: https://www.cnblogs.com/huageyiyangdewo/p/17924781.html

相关文章

  • Spring Boot 3.0 升级 实战踩坑记录
    转载自:https://juejin.cn/post/7176204472082038840SpringBoot3.0升级实战踩坑记录 SpringBoot常用于Java后端开发,于2022年11月24日正式发布了3.0.0版本,带来了全新的特性、升级了依赖版本乃至Java版本,与此同时也弃用或更改了一些旧版本中的写法,导致了需要修改代......
  • cs2 服务器运维记录
    首先安装Metamod2.0(Download)再安装soucmode的cs2版本CounterStrikeSharpWithRuntime(Download)选有运行环境的版本插件列表基于metamod的插件:皮肤修改:cs2_weapons_skin。首先在皮肤修改中调参,接着复制参数在cs2的控制台中输入。修改匕首可能会失败,需要切换武......
  • 记录一次对MQTT协议的渗透测试经历
    前言由于工作需要,特意翻查了MQTT的相关漏洞,并一一学习复现,在此做以学习记录,没有恶意,如有抄袭,请私信作者删除。技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统......
  • 【工作流记录】音频修复+修音+干音处理
    说明近期比较完整的一条工作流的全程记录,遵循互联网开源精神公开分享,仅对个人有效,不保证在另外机器和项目上也有相同效果。所使用到的软件:唧唧Down:哔哩哔哩视频下载;UltimateVocalRemover:自动音频分离软件;RipXDAW:手动音频分离软件;AdobeAudition:音频处理;FLStudio:音频处......
  • 记录--前端验证码破解
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助最近受够了公司内部站点每次登陆都需要填写用户名和密码,还有输入验证码。要是能够直接跳过登陆页面就好啦。说干就干,决定使用油猴插件实现自动登陆功能。其中最难解决的就是验证码破解,花了一天的时间完美解决,现在......
  • Android对接微信登录记录
    Android对接微信登录记录-Stars-One的杂货小窝Android项目要对接下微信登录,稍微记录下踩坑点代码1.添加依赖implementation'com.tencent.mm.opensdk:wechat-sdk-android:6.8.0'2.声明Activity在你的清单文件添加下面Activity声明<application> <activity android......
  • 雅礼 2023.12.20 习题课记录(讲解版)
    雅礼\(2023.12.20\)习题课记录(讲解版)前言AlwaysCF,NeverAT。又双是CF题,只能说“水”,AK了。水题(只放代码)B-TwoVessels(CF1872A)有分别装有\(a,b\)单位水的两个杯子,容量无限大。现在有一个勺子,容量为\(c\),每次可以从一个杯子里舀一勺不超过\(c\)单位的水(\(c\)......
  • golang快速入门:并发编程(一)
    进程、线程和协程进程:是操作系统中的一个执行实体,它拥有独立的内存空间和系统资源。每个进程都是独立运行的,它们之间相互隔离,通过进程间通信(IPC)来进行数据交换。每个进程都有自己的地址空间、堆栈和文件描述符等。进程之间的切换开销较大,因为需要保存和恢复整个进程的状态。线程:是......
  • #1 BanG Dream It's MyGolang!!!!!
    长期素食导致的-[pixiv111124804]睦头人(\(\mathrm{a\color{red}{ctypedef}}\)诱捕器)-[pixiv110897467]但是这其实是一篇正经的Golang上手简记,并不是MyGO简评(MyGO简评还在咕着(大概率不补了鉴于后端用go,有必要开展golang大学习references:Go语言圣经......
  • ARC C 题做题记录
    最后更新时间2023/12/22温馨提示右下角有展开目录索引的功能。由于是做题记录,所以作为题解的话可能有些地方的表达不是特别好,请见谅。[ARC104C]FairElevator\(2n\)个位置,要不重复地填\(2n\)个数,所以可以发现题目中给的区间里面带\(-1\)的都是没有用的,因为反正最后肯......