Grumpy 入门 — Go running Python

channel · · 1698 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

## Grumpy 简介 Google 运行数百万行Python代码用于驱动youtube.com和YouTube API的前端服务器,每秒可以提供数百万的请求! YouTube的前端运行在CPython 2.7上,所以我们投入了大量的工作来改进运行时,并使我们的应用程序能很好地在其中工作。这些努力多年来取得了很多成果,但有一个问题一直得不到解决:高并发、高负载的工作很难在CPython上很好地运行。 为了解决这个问题,我们查看了许多其他Python运行时。每个都有权衡,没有解决并发问题,也没有引入其他问题。 于是我们有了一个疯狂的想法:如果我们实现一个替代运行时优化的实时服务呢?Go似乎是一个明智的平台选择,因为它的操作特性与我们的用例(例如轻量级线程)能很好地匹配。我们想要一流的语言互操作性,Go的强大的运行时类型反射系统能让这一点变得十分简单,Python在Go上会很自然,所以Grumpy诞生了。 ![grumpy](http://studygolang.qiniudn.com/170721/af288136010cf029feca999104b7fc78.png) [Grumpy](/p/grumpy) 是一个 Python to Go 源代码编译器和运行时,旨在替代 CPython 2.7。 关键的区别是它将 Python 源代码编译为 Go 源代码,然后将其编译为本机代码,而不是字节码。这意味着 Grumpy没有 VM。编译的 Go 源代码是对 Grumpy 运行时的一系列调用,Go 库服务与 Python C API 类似的目的(尽管不直接支持 C API)。 部分内容编译自:opensource.googleblog.com 作者:Dylan Trotter,YouTube工程 https://speakerdeck.com/m157q/20170718-gtg25-introduction-to-grumpy-1

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1698 次点击  
加入收藏 微博
0 回复
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传