近一年来,学习和研究Go语言,断断续续的收集了一些比较优秀的开源项目,这些项目都非常不错,可以供我们学习和研究Go用,从中可以学到很多关于Go的使用、技巧以及相关工具和方法。我把他们整理发出来,大家有兴趣可以根据自己的爱好选择一些进行研究和阅读,提升自己的能力,更好的使用Go语言,开发出更优秀的项目。
1、docker
无人不知的虚拟华平台,开源的应用容器引擎,借助该引擎,开发者可以打包他们的应用,移植到任何平台上。
2、golang
go本身,也是用go语言实现的,包括他的编译器,要研究go源代码的可以看此项目录
3、kubernetes
Google出品,用于调度和管理docker的开源容器管理系统,利用他,可以方便的管理你的docker实例,哪怕非常多,也是目前最流行的docker管理系统。
4、awesome-go
这不是一个go项目,他是一个学习go的资料网站,属于著名的awesome系列,里面关于go的资源非常详细。
5、gogs
一款基于git的代码托管系统,类似于github和gitlab,不过其小巧易用,功能强大,部署方便,也有不少用户在使用。
6、syncthing
开源的文件同步系统,它使用了其独有的对等自由块交换协议,速度很快,据说可以替换BitTorrent Sync。
7、hugo
一款极速的静态页面生成器,让你可以很快的搭建个人网站,提供了多套主题可供使用,并且可以自己定制,和NodeJS的Hexo是一样的。
8、grafana
一款开源监控度量的看板系统,可以接Graphite,Elasticsearch,InfluxDB等数据源,定制化很高。
9、etcd
一款分布式的,可靠的K-V存储系统,使用简单,速度快,又安全。
10、hub
一款更便捷使用github的工具,包装并且扩展了git,提供了很多特性和功能,使用和git差不多。
11、influxdb
可伸缩的数据库,使用场景主要用来存储测量数据,事件点击以及其他等实时分析数据,用来做监控性能很不错。
12、caddy
快速的,跨平台的HTTP/2 Web服务器。
13、beego
国产开源的高性能Web框架,让你快速的开发Go Web应用服务,谢大主笔。
14、martini
也是一款不错的Web框架。
15、cayley
Google开源的图数据库,这是一个NoSql数据库,适合处理复杂的,但是结构化低的数据,适用于社交网络,推荐系统等。
16、nsq
一款开源的实时的,分布式的消息中间件系统。
17、codis
Codis是一个分布式Redis解决方案,其实就是一个数据库代理,让你在使用Redis集群的时候,就像使用单机版的Redis是一样的,对开发者透明。
18、delve
这个Go开发者都知道,一款go应用开发的调试工具。
19、cobra
cobra是一个命令行go库,可以让你创建非常强大的,现代的CLI命令行应用。
20、shadowsocks-go
go版本的shadowsocks,大家都懂的。
21、pholcus
Pholcus(幽灵蛛)是一款纯Go语言编写的支持分布式的高并发、重量级爬虫软件,定位于互联网数据采集,为具备一定Go或JS编程基础的人提供一个只需关注规则定制的功能强大的爬虫工具。