精选!项目中常用的Golang库大盘点

发表时间: 2020-05-22 08:48

go语言中文文档:www.topgoer.com

转自:
https://studygolang.com/articles/28781#reply0


github.com/Arafatk/DataViz

  对于常用数据结构的可视化,使用的graphviz。

github.com/astaxie/beego

  beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。

github.com/atotto/clipboard

  支持剪切板功能。

github.com/awalterschulze/gographviz

  使用golang来写dot语言,通过graphviz生成图。

github.com/bitly/go-simplejson

  与任何json交互。

github.com/blevesearch/bleve

  一个现代文本索引Go库,类似于lucene。

  

github.com/cayleygraph/cayley

  Cayley 是 Google 的一个开源图(Graph)数据库,其灵感来自于 Freebase 和 Google 的 Knowledge Graph 背后的图数据库。

github.com/cjbassi/gotop

  golang重写的top工具,界面简洁、功能强大。

github.com/coocood/freecache

  FreeCache 是一个 Go 语言的缓存库,无额外的 GC 负荷。数百万对象的垃圾收集延迟仅在数百毫秒。

  特性:

    * 可存储数以百万计条目

    * 零垃圾收集负荷

    * 高并发而且线程安全的访问

    * 近乎 LRU 的算法

    * 严格限制内存使用

github.com/coreos/etcd

  高可用的分布式key-value存储,可以用于配置共享和服务发现;类似于zookeeper和consul ;提供restful的http接口,使用简单;基于raft算法的强一致性、高可用的服务存储目录。

github.com/davecheney/httpstat

  httpstat是一款可以测试http状态的可视化工具,通过这个工具可以看出来http响应信息。包括dns解析、tcp连接等信息,httpstat一共有golang版本和python版本。

github.com/derekparker/delve

  Devle是一个非常棒的golang 调试工具,支持多种调试方式,直接运行调试,或者attach到一个正在运行中的golang程序,进行调试。

github.com/esimov/diagram

  将ASCII图转换成手绘图。

github.com/floyernick/Data-Structures-and-Algorithms

  基本数据结构与算法的实现。

github.com/garyburd/redigo

  golang操作redis。

github.com/gin-gonic/gin

  web框架,类似beego,官网:
https://gin-gonic.github.io/gin/

github.com/go-vgo/robotgo

  模拟鼠标键盘事件、截屏等。

github.com/gobuffalo/packr

github.com/gogits/gogs

  git服务器。

github.com/goinbox/color github.com/goinbox/crypto github.com/goinbox/encoding github.com/goinbox/exception github.com/goinbox/go-nsq-mate github.com/goinbox/gobox-demo github.com/goinbox/gohttp github.com/goinbox/golog github.com/goinbox/gomisc github.com/goinbox/inotify github.com/goinbox/levelcache github.com/goinbox/mongo github.com/goinbox/mysql github.com/goinbox/page github.com/goinbox/pidfile github.com/goinbox/pool github.com/goinbox/redis github.com/goinbox/shardmap github.com/goinbox/shell github.com/goinbox/simplecache github.com/golang/dep github.com/golang/lint/golint github.com/golang/protobuf/proto github.com/gonum/plot github.com/google/gopacket github.com/gorilla/mux github.com/grafana/grafana github.com/grant/go-diagram github.com/henrylee2cn/pholcus github.com/hirokidaichi/goviz github.com/huichen/wukong github.com/ilikeorangutans/grails-service-visualizer github.com/influxdata/influxdb github.com/jinzhu/gorm github.com/jmhodges/levigo github.com/jroimartin/gocui github.com/json-iterator/go github.com/julienschmidt/httprouter github.com/knrt10/asciiConvert github.com/larspensjo/config github.com/lukehoban/go-outline github.com/mailru/easyjson github.com/Masterminds/go-in-practice github.com/matryer/try github.com/mattbaird/elastigo github.com/mb-14/gomarkov github.com/mholt/caddy github.com/muesli/gamut github.com/myntra/golimit

github.com/newhook/go-symbols

  从源码中提取json结构。

github.com/mdempsky/gocode

  go源码编写vim工具。

github.com/nsqio/nsq

  消息队列。

github.com/olivere/elastic

  golang对于es操作库。

github.com/PuerkitoBio/goquery

  支持类似于jQuery的功能。

github.com/robertkrimen/otto

  javascript解析器。

github.com/robfig/cron

  定时任务。

github.com/rogpeppe/godef

  从go源码中查找符号表信息。

github.com/rqlite/rqlite

  嵌入式数据库sqlite相关go操作。

github.com/ruben2020/tags2uml

  从源码生成uml图,支持C++, Java, Python, Ruby and C#。

github.com/samuel/go-zookeeper

  Zookeeper Golang客户端

github.com/sanity-io/litter

  golang调试、测试使用,可以用来打印任何结构。

github.com/senorprogrammer/wtf

  机器基本信息仪表盘。

github.com/Shopify/sarama

  golang操作kafka库。

github.com/Sirupsen/logrus

  日志框架。

github.com/spf13/cobra

  Cobra既是一个用来创建强大的现代CLI命令行的golang库,也是一个生成程序应用和命令行文件的程序。

github.com/spf13/hugo

  Hugo是由Go语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。

github.com/spf13/viper

  配置文件操作库。

github.com/syncthing/syncthing

  多机器之间的同步工具。

github.com/syndtr/goleveldb

  golang操作leveldb,一个本地数据库,高效kv。

  Leveldb是一个google实现的非常高效的kv数据库,目前的版本1.2能够支持billion级别的数据量了。

  LevelDB 只是一个 C/C++ 编程语言的库, 不包含网络服务封装。

github.com/TrueFurby/go-callvis

  生成golang调用关系图。

github.com/urfave/negroni

  web框架。

github.com/vdobler/chart

生成图表库。

github.com/vmihailenco/msgpack

  序列化反序列化工具,类似于pb。

github.com/wcharczuk/go-chart

  生成图表库。

github.com/wvanbergen/kazoo-go

  access Kafka metadata in Zookeeper

github.com/sqs/goreturns

  补充返回值。