Dropbox 开源其 Go 语言库 —— godropbox

标签: 综合新闻 | 发表时间:2014-07-05 07:03 | 作者:
出处:http://www.oschina.net/?from=rss

Dropbox的成功大部分归功于Python,这个语言可以使我们快速迭代开发。然而,为了支持日益增长的用户量,我们的基础设施日渐成熟,这时 我们开始寻找一种更为高效的方式来改变系统规模。大约在一年前,我们作出决定,把对于性能要求很苛刻的后台部分从Python迁移到了Go语言,以提供更 好的并发支持和更快的运行速度。一个规模很小的工程师团队做出了大量的努力,这背后大约是200,000(二十万)行Go语言代码。此时,我们成功地把架 构的大部分迁移到了Go语言。

缺少构建大型系统的健壮的程序库,已经成为了反复出现阻碍我们开发进度的问题。这并不奇怪,因为Go语言还是一门十分年轻的语言。为了处理这个问 题,我们的团队开始构建各种各样的库,已提供更好的封装抽象,例如连接管理和MenCache客户端。我们非常兴奋的宣布我们开源了这些库,帮助更广大的 社区开发大型的产品系统。

作为这项努力的开端,我们包含了许多库。下面列举几个:

  • caching :提供建立caching层的通用抽象。

  • errors :强化了标准错误接口并且揭示出栈跟踪的信息

  • database/sqlbuilder : 允许开发者用可编程的方式生成sql语句。

  • memcache : 实现了一个全特性的memcache客户端库,支持连接池和灵活的 shading 。

  • net2 : 连接管理中加入了函数性功能。

  • (还有我个人最喜欢的,hash2,它包含了一个空间效率高,基于排列的连续哈希算法)

我们会在下面这个repo继续扩大这些库的规模:
https://github.com/dropbox/godropbox

为了确保我们持续投入努力到这些开源库中,我们承诺在我们内部也使用这个公开版本的repo。我们正在迁移内部系统,以直接使用这个repo中的库。这能确保所有的修改和优化都能在他们被提取内部系统之前对公众开放。

我们希望你能加入我们的社区,帮助我们把这些程序库变得更好!

原文链接: dropbox   翻译: 伯乐在线 - Hanbin
译文链接: http://blog.jobbole.com/71414/

相关 [dropbox 开源 go] 推荐:

Dropbox 开源其 Go 语言库 —— godropbox

- - 开源中国社区最新新闻
Dropbox的成功大部分归功于Python,这个语言可以使我们快速迭代开发. 然而,为了支持日益增长的用户量,我们的基础设施日渐成熟,这时 我们开始寻找一种更为高效的方式来改变系统规模. 大约在一年前,我们作出决定,把对于性能要求很苛刻的后台部分从Python迁移到了Go语言,以提供更 好的并发支持和更快的运行速度.

Go 业务开发中常用的几个开源库

- - IT瘾-dev
哈喽,大家好,我是 asong. 最近总有一些初学 Go语言的小伙伴问我在业务开发中一般都使用什么web框架、开源中间件;所以我总结了我在日常开发中使用到的库,这些库不一定是特别完美的,但是基本可以解决日常工作需求,接下来我们就来看一下. Gin是一个用 Go编写的 Web框架,它是一个类似于 martini但拥有更好性能的 API框架.

Go和HTTPS

- - Tony Bai
近期在构思一个产品,考虑到安全性的原因,可能需要使用到 HTTPS协议以及双向数字证书校验. 之前只是粗浅接触过HTTP( 使用Golang开 发微信系列). 对HTTPS的了解则始于那次 自行搭建ngrok服务,在那个过程中照猫画虎地为服务端生成了一些私钥和证书,虽然结果是好 的:ngrok服务成功搭建起来了,但对HTTPS、数字证书等的基本原理并未求甚解.

dropbox讲python

- chuang - Initiative
dropbox定制优化CPython虚拟机,自己搞了个malloc调度算法. 那个 !!!111cos(0). 期待这次PyCon China 2011.

Valve宣布CS: GO

- 小D - Solidot
此前媒体曾报告说Valv邀请CSS玩家和社区代表访问其总部,现在谜团已经解开:Valv宣布了团队射击游戏Counter-Strike: Global Offensive,它将在2012年初登陆Steam(PC和Mac)、PS3和Xbox360. CS: GO将是12年前发布的CS的真正扩展,而不是类似CS:Source的引擎更新,它提供了新的地图、角色、武器,经典CS地图(如de_dust),新的游戏模式,配对比赛和排名榜等.

Go 语言初步

- wei - 云风的 BLOG
所谓认真玩,就是拿 Go 写点程序,前后大约两千行吧. 据说 Go 的最佳开发平台是 Mac OS ,我没有. Windows 版还没全部搞定,但是也可以用了. 如果你用 google 搜索,很容易去到一个叫 go-windows 的开源项目上. 如果你用这个,很多库都没有,而且语法也是老的. 我在 Windows 下甚至不能正确链接自己写的多个 package.

用SugarSync替代Dropbox

- yuan - Solidot
fzcs 写道 "网络存储可以实现在多台电脑上文件共享和同步文件并在互联网上共享文件. 不可否认Dropbox是目前比较优秀的网络存储(云存储)应用之一,可惜前一阵被无情墙掉. 可能有很多朋友已经完全适应了网络存储带给我们的便捷,很大程度已经离不开这类应用,所以寻找Dropbox的替代者就变得尤为必要了.

Dropbox真心好玩

- dc - 亦斯
前两天在找一款同步盘,最后竟然选定了迅雷随身邮,罪过罪过. 唉,又多了一样永远抹不掉的污点. Dropbox真心好玩,由于被墙而不去上她你就大错特错了. 还没账号的童鞋,抓紧点此注册. (好吧,这是我的邀请链接:http://db.tt/0q7UxPxe,用了这个你能多得250M. 找字符串的好去处:http://just-ping.com/index.php?vh=www.dropbox.com%2F&c=&s=ping%21.

Go 1.1 的性能提升

- - 博客 - 伯乐在线
伯乐在线注:今天上午在微博推荐了英文原文,感谢 @Codefor 的热心翻译. 如果其他朋友也有不错的原创或译文,可以尝试 推荐给我们. 这是Go1.1发布后性能提升分析系列的第一篇文章. Go官方文档( 这里和 这里)报告说,用Go1.1重新编译你的代码就可以获得30%-40%的性能提升.

Dropbox的成本估算

- 车东 - 阮一峰的网络日志
两周前,云存储网站Dropbox宣布,用户总数达到了2500万. 这个数字令人印象深刻,因为一年半前,它的用户总数已经是300万了. 短短18个月,在一个这样大的基数上,继续扩张八倍多,真可谓势头惊人. 惊叹之余,许多人很好奇,Dropbox到底花了多少钱,才能够服务这么多用户. 因为除了付费用户以外,它没有其他收入来源.