Golang 常用工具记录
Golang 常用工具记录
1 golang 类
1.1 日常使用的
复制结构体到另外一个结构体 等等类似的功能
Go中简单、可靠、高效的分布式任务队列,使用 redis 做为 broker
Machinery是基于分布式消息传递的异步任务队列/作业队列。
resty是 Go 语言的一个 HTTP client 库。resty功能强大,特性丰富。它支持几乎所有的 HTTP 方法。(GET/POST/PUT/DELETE/OPTION/HEAD/PATCH等),并提供了简单易用的 API。
1.2 日志包
go get github.com/sirupsen/logrus
golang 的日志包
go get -u go.uber.org/zap
golang 的日志包
1.3 配置文件解析
go get gopkg.in/ini.v1
ini 配置文件解析工具
go get github.com/spf13/viper
golang 的配置文件解析工具,支持多种格式,常用这个
2 grpc 类
调试grpc服务的工具
将数据库中的表转成 proto 文件,go-zero-looklook就用到了这个工具
3 web框架
go get -u github.com/gin-gonic/gin
http 框架
go get github.com/gorilla/websocket
websocket 库
据说性能低,每次 write 都要加锁,无法并发写入,不支持go 上下文特性,据说还会导致连接不会释放? 这个还不确定哦!!!
go get nhooyr.io/websocket
websocket 库,后面项目中用到,可以试试这个
go get github.com/go-playground/validator/v10
web 参数校验常用的库
4 跟数据库打交道的
4.1 sql 类
go get -u github.com/jinzhu/gorm
golang 的 orm 框架
mysql数据库转 struct 工具,可以将mysql数据库自动生成golang sturct结构,带大驼峰命名规则。带json标签
Go 的流畅 SQL 生成器
4.2 no sql 类
go get go.mongodb.org/mongo-driver/mongo
mongodb 的驱动器
# redis6.X
go get github.com/go-redis/redis/v8
# redis7.x
go get github.com/go-redis/redis/v9
5 跟消息队列 打交道的
5.1 kafka 类
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++的库,性能强,就是编译麻烦些
Golang 常用工具记录的更多相关文章
- linux 常用工具记录及简介
前言 linuxz虽然各种软件的生态还比较差,但是大势所趋,早晚都是要用的.记录下自己常用的软件,要是那天系统崩了重装也舒服点 编程工具 pycharm专业版(社区版也能用,只是用惯了专业版) * 下 ...
- (转载)分享常用的GoLang包工具
分享常用的GoLang包工具 包名 链接地址 备注 Machinery异步队列 https://github.com/RichardKnop/machinery Mqtt通信 github.com/e ...
- golang常用库:cli命令行/应用程序生成工具-cobra使用
golang常用库:cli命令行/应用程序生成工具-cobra使用 一.Cobra 介绍 我前面有一篇文章介绍了配置文件解析库 Viper 的使用,这篇介绍 Cobra 的使用,你猜的没错,这 2 个 ...
- spring中常用工具类介绍
http://www.cnblogs.com/langtianya/p/3875103.html 文件资源操作 Spring 定义了一个 org.springframework.core.io ...
- 2015第30周三Spring常用工具类
文件资源操作 文件资源的操作是应用程序中常见的功能,如当上传一个文件后将其保存在特定目录下,从指定地址加载一个配置文件等等.我们一般使用 JDK 的 I/O 处理类完成这些操作,但对于一般的应用程序来 ...
- linux系统监控常用工具
linux系统监控常用工具 一.系统核心工具包(coreutils) 1./bin/df 报告系统的磁盘空间用量 df -h 显示磁盘分区fdisk -l 2./bin/uname 显示系统信息 u ...
- 给c++程序员的一份礼物——常用工具集
给c++程序员的一份礼物——常用工具集 [声明]如需复制.传播,请附上本声明,谢谢.原文出处:http://morningspace.51.net/,moyingzz@etang.com 所谓&quo ...
- PHP常用工具类
<?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...
- commons-lang3-3.2.jar中的常用工具类的使用
这个包中的很多工具类可以简化我们的操作,在这里简单的研究其中的几个工具类的使用. 1.StringUtils工具类 可以判断是否是空串,是否为null,默认值设置等操作: /** * StringUt ...
- Playmaker全面实践教程之Playmaker常用工具
Playmaker全面实践教程之Playmaker常用工具 Playmaker常用工具 Playmaker插件搭载了8个工具:FSM Browser.State Browser.Templates.T ...
随机推荐
- [转贴]更改 CMD 编码(解决 VSJupyter 乱码)
https://zhuanlan.zhihu.com/p/521376336 以 将编码更改为 UTF-8 为例 1. 临时修改编码 运行 CMD 输入 chcp 查看当前的代码页 (代码页和国家/地 ...
- [转载]关于NSA的EternalBlue(永恒之蓝) ms17-010漏洞利用
2017年5月19日 感谢原作者:http://www.cnblogs.com/cnbluerain/ 好久没有用这个日志了,最近WannaCry横行,媒体铺天盖地的报道,我这 ...
- 【JS 逆向百例】浏览器插件 Hook 实战,亚航加密参数分析
关注微信公众号:K哥爬虫,QQ交流群:808574309,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途 ...
- 初试高云FPGA
前言 之前一直眼馋Sipeed的Tang系列,正好遇到有工程需要高速控制并行总线,就买了NANO 9K和Primer 20K试试水 买回来先拆的贵的20k,结果发现Sipeed设计师有奇怪的脑回路: ...
- go中context源码解读
context 前言 什么是context 为什么需要context呢 context底层设计 context的实现 几种context emptyCtx cancelCtx timerCtx val ...
- 『深度学习项目四』基于ResNet101人脸特征点检测
相关文章: [深度学习项目一]全连接神经网络实现mnist数字识别 [深度学习项目二]卷积神经网络LeNet实现minst数字识别 [深度学习项目三]ResNet50多分类任务[十二生肖分类] 『深度 ...
- ssh原理及使用场景
用过linux系统的朋友,基本肯定会用过ssh.因为大部分的linux登录都是通过ssh将进行登录,除非你用的是类似windows的桌面版. 一.什么是SSH SSH 为 Secure Shell 的 ...
- 零基础入门Vue之窥探大法——计算与侦听
前言 在 上一小节 我介绍了我学习vue入门 插值语法 的过程. 在本篇,我将记录我对vue的 计算属性和侦听器 的学习记录 注:本篇对于"侦听"和"监听"是一 ...
- 小知识:enable_ddl_logging参数的设置和日志位置变化
业务部门需求,要协助客户DBA查truncate操作历史执行情况. 首先确认数据库已开启enable_ddl_logging, 然后从alert中查找没有记录: 之前11g版本都是记录到alert日志 ...
- .NET 云原生架构师训练营(模块二 基础巩固 依赖注入)--学习笔记
2.2.1 核心模块--依赖注入 什么是依赖注入 .NET Core DI 生命周期 服务设计 服务范围检查 ASP.NET Core 依赖注入:https://docs.microsoft.com/ ...