Go语言开源项目知多少

1. Docker

到现在,Docker几乎是Go再难找到也难以复制的一个成功案例。Docker项目在2014年9月份就拿到了C轮4000万美元融资,版本迭代速度超快,目前从GitHub看到已有78个版本,而它仅仅是再2013年初才正式开始的一个项目而已。目前,国内Docker技术推广也进行的如火如荼,比如 Docker中文社区,CSDN也建立了 Docker专区。

Docker团队之所以喜欢用Go语言,主要是Go具有强大的标准库、全开发环境、跨平台构建的能力。

2. Kubernetes

Kubernetes是2014年夏天Google推出的Kubernetes,基于Docker,其目的是让用户通过Kubernetes集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是Container Pod(容器仓)。

3. Etcd & Fleet

etcd是由CoreOS开发并维护键值存储系统,它使用Go语言编写,并通过Raft一致性算法处理日志复制以保证强一致性。目前,Google的容器集群管理系统Kubernetes、开源PaaS平台Cloud Foundry和CoreOS的Fleet都广泛使用了etcd。

Fleet则是一个分布式的初始化系统。它们之所以选择使用Go语言,则是因为Go语言对跨平台的良好支持,以及其背后的强大社区。

4. Deis

Deis是一个基于Docker和CoreOS的开源PaaS平台,旨在让部属和管理服务器上的应用变得轻松容易。它可以运行在AWS、GCE以及Openstack平台下。

5. Flynn

Flynn是一个使用Go语言编写的开源PaaS平台,可自动构建部署任何应用到Docker容器集群上运行。Flynn项目受到Y Combinator的支持,目前仍在开发中,被称为是下一代的开源PaaS平台。

6. Lime

相对上面的几款Go语言在云端和服务器端之外,Lime则显得比较特殊。Lime,则是一款用Go语言写的桌面编辑器程序,被看做是著名编辑器Sublime Text的开源实现。

7. Revel

Revel是一个高生产力的Go语言Web框架。Revel框架支持热编译,当编辑、保存和刷新源码时,Revel会自动编译代码和模板;全栈特性,支持路由、参数解析、缓存、测试、国际化等功能。

8. InfluxDB

一个Go语音编写的开源分布式的时序、事件和指标数据库,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。

9. Syncthing

一款用Go语言编写的开源云存储和同步服务工具,用户的数据将由自己完全控制,所有的通信全都加密,每个访问节点都用加密证书验证。该项目被认为是Dropbox和 BitTorrent Sync的开源替代,Syncthing之所以选择Go语言,也是出于跨平台考虑。

10. Gogs

Gogs则是一款由国人无闻( GitHub)开发的自助Git服务项目。Gogs的目标是打造一个最简单、最快速和最轻松的方式搭建自助Git服务。据作者称,之所以选择使用Go语言开发,就是Go允许Gogs可以通过独立的二进制分发,且对跨平台有良好支持。

来自技术博客的整理,go语言相关开源项目:

工具类:

goclipse:是一个eclipse插件,可以用来开发go语言

liteide: 专门用来开发go的ide

应用类:

Go Read :go语言开发的可替代google reader的东西

框架类:

beego:强大的web框架

gwk: gwk(GO Web Server Kit)是GO语言的Web Server开发框架,简单易用,扩展性好,而且兼容Go App Engine。

Go成功的项目

nsq:bitly开源的消息队列系统,性能非常高,目前他们每天处理数十亿条的消息

packer:用来生成不同平台的镜像文件,例如VM、vbox、AWS等,作者是vagrant的作者

skynet:分布式调度框架

Doozer:分布式同步工具,类似ZooKeeper

Heka:mazila开源的日志处理系统

cbfs:couchbase开源的分布式文件系统

tsuru:开源的PAAS平台,和SAE实现的功能一模一样

groupcache:memcahe作者写的用于Google下载系统的缓存系统

god:类似redis的缓存系统,但是支持分布式和扩展性

gor:网络流量抓包和重放工具

尽管go语言还没有发展成熟,但其简洁、快速、安全、并行、有趣、开源等特点也促使其快速发展,Google也对go充满期待,但相关计划想要完全取代现有的技术几乎不可能,谷歌首席软件工程师罗布派克(Rob Pike)也说:我不认为我们能取代任何东西。我们只是创造出这个领域的另一个角色。

原文发布于微信公众号 - Golang语言社区(Golangweb)

原文发表时间:2017-05-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

新版微信主界面新增小程序入口,小程序真正的红利已来临

微信小程序最近的更新又有点勤快了啊,就在刚才,在我百无聊赖的刷朋友圈的时候,微信公众平台官方给我推荐了这么一条消息,如图: ? 说实话,对于微信小程序这样的消息...

22290
来自专栏邵靖的专栏

一个基于 Docker 的负载均衡实例

本文目地主要是给大家简单安利一下目前最火的容器产品 Docker 及其所涉及的相关技术,并通过一个实际例子演示一下容器技术的典型应用场景。

3.3K10
来自专栏CodeSheep的技术分享

利用K8S技术栈打造个人私有云(连载之:初章)

最近在学习Docker技术,相信Docker技术大家都有所了解,Docker类似于虚拟机(但与虚拟机又有本质不同),提供进程级别的隔离。我们可以利用Docker...

437150
来自专栏一名叫大蕉的程序员

我学啥你就学啥Kubernetes(0)No.119

好,现在开始跟大家一起学习 Kubernetes ,本系列文章不会有什么安排,起点就是,我学什么我就向你们分享什么,期望大家对这门目前比较主流的技术有一定的...

10230
来自专栏腾讯大数据的专栏

“超级计算机”再现-Gaia集群操作系统为业务插上云的翅膀

1. 引言 在互联网用户和应用爆炸的今天,我们承载的服务和运算,无论在规模还是性能上都提出了前所未有的要求,开发人员常常偷偷在想,能不能给我一个超级计算机,很多...

54850
来自专栏陈云的专栏

Docker 学习笔记 ( 一 ) 简介以及构架剖析

之前一直忙于项目工作,一直没有好好去系统学习,完善自己的知识体系,以致于在腾讯两年知识体系都没有深度发展,还是停留在原来的领域,所以从 8 月份开始学习 doc...

1.2K20
来自专栏云计算D1net

Docker为何未在生产环境中取得广泛成功?

Docker的发展势头一天比一天强劲,它显然在试图解决实际的问题。然而,对如今许多的生产环境用户来说,没有出现优点压倒缺点的局面。在开发、测试和持续性集成等环境...

399100
来自专栏SDNLAB

SDN实战团分享(三):Docker网络使用体验

我今天和大家分享一下Docker的网络,主要是基于我的使用体验和对这里面的一些技术的理解,也顺便听取一下大家的建议。我是做培训的,大多数时候和理论的东西打交道,...

37360
来自专栏古时的风筝

Docker:Ubuntu下的安装

Docker是什么 Docker 是 Docker.Inc 公司开源的一个基于 LXC技术之上构建的Container容器引擎, 源代码托 管在 GitHub ...

41650
来自专栏企鹅号快讯

Kubernetes的前世今生和未来

有人认为自动化,云计算和人工智能是第四次工业革命。如果你开始感受到IT领域自动化率的飙升,特别是在应用程序部署和管理领域(我觉得还不是无缝的自插拔式),那么不用...

27060

扫码关注云+社区

领取腾讯云代金券