写点什么

Dropbox 开源其 Go 语言工具库

  • 2014-07-07
  • 本文字数:708 字

    阅读完需:约 2 分钟

近日,Dropbox 开源了其基于 Go 语言的工具库 godropbox ,并表示在一年前已经决定将 Dropbox 中对性能要求比较高的后端程序从 Python 迁移到 Go 语言。Dropbox 的几乎所有的代码都是用 Python 编写的, Python 语言被广泛使用在服务器端、桌面的客户端、网站控制逻辑以及后端的 API 和分析上。Dropbox 亲睐 Python 简单易学、开发效率高等特点,但是现在为了支撑日益增长的用户数量,Dropbox 不得不将部分对性能要求比较高的业务替换为有更好的并发支持和更快的运行速度的 Go 语言。

但是 Go 语言的发展尚不成熟,比如在 Dropbox 使用过程中就发现 Go 语言缺少构建大型系统所需要的健壮的程序库。Dropbox 开发团队为了解决此问题,封装了很多实用的 Go 语言工具库,并将其开源以帮助社区开发基于 Go 语言的大型系统。Dropbox 承诺他们内部使用的也是开源的 godropbox ,他们会持续维护更新 godropbox。godropbox 中包含了很多工具库,下面是部分热门库:

  • caching 一个构建缓存层的工具包
  • container 包含了众多的容器 / 缓存数据结构
  • container/lrucache 标准的 LRU 缓存
  • container/set 集合的实现
  • database 数据库操作工具类
  • database/sqlbuilder 编程式拼装 SQL 工具包
  • errors 强化了标准错误接口并且提供栈跟踪的信息
  • gocheck2 单元测试框架
  • hash2 哈希函数工具类
  • memcache memcache 客户端
  • net2 标准的 net 包的扩展
  • time2 标准的 time 包的扩展

另外,需要说明的是 Dropbox 并不是把所有业务都迁移到 Go,而只是把对性能要求比较高的基础部分迁移。Dropbox 会继续把 Python 当作主要的开发语言。

读者可以到 GoDoc 上详细了解 godropbox。目前 godropbox 的很多工具包都不能单独使用,希望接下来 Dropbox 可以为每个功能提供单独的工具包。

2014-07-07 07:263329
用户头像

发布了 219 篇内容, 共 148.7 次阅读, 收获喜欢 195 次。

关注

评论

发布
暂无评论
发现更多内容

加油!未来的每一天

Sherry

520单身福利 520 单身福利

聊聊一个普通程序员在520这天的心态

后台技术汇

520 单身福利

架构实战营 模块四作业

netspecial

架构实战营

爱情从来都不是简单的事

阿泽🧸

520单身福利

ArrayList与LinkedList性能大PK

Damon

java基础 5月日更

感恩父母

若兮

520 单身福利

缅怀袁老

topsion

随笔杂谈

Python自动化神器-Fabric

小圆子

520 单身福利

模块四:课后作业

菲尼克斯

架构实战营

【LeetCode】增长的内存泄露Java题解

Albert

算法 LeetCode 5月日更

NLog整合Exceptionless

yi念之间

.net core exceptionless nlog

🚄【Redis 干货领域】帮你完全搞定Cluster原理(架构篇)

码界西柚

redis redis集群 5月日更 redis架构

加密货币终将替代黄金?总价值已接近私人持有黄金价值

CECBC

☕【JVM技术之旅】彻底弄清楚Minor GC和Major GC及Full GC

码界西柚

JVM 垃圾回收 GC 5月日更

密码学基础

escray

学习 极客时间 安全 5月日更 安全攻防技能30讲

C语言不完全类型是什么?有什么用途?

不脱发的程序猿

C语言 C语言不完全类型

打破固有思维(十六)

Changing Lin

5月日更

设计千万级学生管理系统的考试试卷存储方案

贯通

架构实战营

虽不能至,心向往之|靠谱点评

无量靠谱

Python数据科学基础-Pandas介绍

五分钟学大数据

数据科学 5月日更

分布式锁中的王者方案 - Redisson

悟空聊架构

redis 分布式 分布式锁 redisson

拿金钱考验人性|靠谱点评

无量靠谱

Flink的程序结构

大数据技术指南

flink 5月日更

打击挖矿和交易行为!

CECBC

kube-controller-manager之PV Cotroller源码分析

良凯尔

Kubernetes 源码分析 Ceph CSI

低代码/无代码和简单API

YonBuilder低代码开发平台

低代码

网络攻防学习笔记 Day22

穿过生命散发芬芳

5月日更 网络攻防

梯度下降法 - DAY12

Qien Z.

5月日更 过拟合 梯度下降法

Vue-2-常用指令

Python研究所

520 单身福利

.Net Core Excel导入导出神器Npoi.Mapper

yi念之间

C# .net core npoi

WebContainers介绍:如何在浏览器运行原生的Nodejs

代码先生

大前端 webassembly 技术创新 WebContainers StackBlitz.com

Dropbox开源其Go语言工具库_Python_小盖_InfoQ精选文章