腾讯云的 Python 实践

作者介绍 李力:腾讯云的布道师、CVM技术负责人 腾讯云调度管理系统研发负责人,腾讯云布道师,主要负责腾讯公有云/私有云后台框架的设计、实现及运营,在KVM虚拟化、sdn/vpc、linux container上有多年的实践经验。

导语

本文整理自李力在“第六届 PyCon China 大会”的分享,已获作者授权。

9 月 25 日,第六届 PyCon China 大会在深圳召开。这是这次大会的第二站活动,第一站已在上海成功举办。据官方介绍,PyCon China 过去 5 年已经在北京、上海、广州、珠海、杭州等地举办过十几次大会,影响达数万 Python 开发者。

腾讯是一家大量使用 C++ 的公司,讲者当初也是作为 C++ 程序员进入该公司的。2007 年,开始接触了 Python,很快就将其认定为一门可以”带你装逼带你飞“的语言。出于对 Python 在云计算方面的信心,李力从 2012 年开始在腾讯云推广使用 Python。

推广初期碰到了一定的阻力,这点对于任何想在公司推广新技术的人来说都是无法避免的。针对领导们的担忧,李力强调了在公有云中使用 Python 的诸多优势:

与 Linux 系统天然贴合,系统编程 API 与 glibcc 保持一致,以前的工具箱仍然适用。

是能够运行的伪代码,开发效率得到极大提升。

容易与 C/C++交互,使用 ctypes 可以很方便地调用 C 代码。

更容易保持项目的整洁。

基于这些考虑,腾讯云开始慢慢尝试引入 Python。首先就是改造接入层,使用 Flask + uWSGI + Nginx 改造了旧的 CGI 接口,使得开发工作更加简单,接口更加现代化。

另外,腾讯云还将 Python 用于系统编程,开发了公有云上的宿主机包管理工具。据说这个工具上线几年来运行都没有出什么问题。一般开发者很少有将 Python 用于系统编程的,腾讯云之所以选择 Python,是由于其标准库与 POSIX 规范天然贴合,具备优秀的文本处理和分析能力,而且还有完备的网络功能等原因。

接下来,他还介绍了云调度系统的框架,并分享了在大规模系统中的应用 Python 技术的一些坑。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SEO

「知识」SEO策略的4个关键领域

2063
来自专栏即时通讯技术

实时视频直播客户端技术盘点:Native、HTML5、WebRTC、微信小程序

2017 年 12 月,微信小程序向开发者开放了实时音视频能力,给业内带来广阔的想象空间。连麦互动视频直播技术在 2016 年直播风口中成为视频直播的标配,然而...

3351
来自专栏罗超频道

iOS8来了:开放红利,输入法狂欢

当我在拉斯维加斯的Luxor Hotel(金字塔酒店)碰碰手气的当口,朋友圈大部分消息都是iOS8更新版本正式放出相关的消息。尽管不少人都在吐槽iOS每次更新所...

2545
来自专栏无原型不设计

让你不再恋家的9款小众时尚的酒店网站设计

一场说走就走的旅行少不了一家精挑细选的酒店。出门在外,没有一个舒适的住处,恐怕旅行的记忆也并不是那么美好。大牌酒店住不起,小众酒店性价比高,但哪家最合适?网上攻...

2926
来自专栏BestSDK

在设计师眼中,Android和iOS的4点设计不同之处

在一个设计师眼里,这两个系统的差异性之多可远远不止表面上看起来的那么简单粗暴。但在移动端趋势有如春草那样蔓延开来的今天,大多数的公司都选择把 iOS 的界面直接...

3134
来自专栏人称T客

APP终结者 誓言还是谎言?

“未来是重前端轻后端的天下”,你没有听错,这是云适配CEO陈本峰给企业移动化的重新定义,但对于这个说法T哥还是持保留意见,因为一直被大家宣贯的轻前端重后端在云适...

3678
来自专栏无原型不设计

优秀UX设计师的八条黄金法则

与用户保持亲密 成为成功的UX设计师最重要的先决条件之一就是与用户保持紧密的联系,以发现和了解他们的需求和爱好。理想情况下你应该让自己完全地成为产品用户,因...

2685
来自专栏陈远峰的专栏

全面了解 React License

随着 react 地广泛使用,各大公司越来越关注 react license 问题,本文整理搜集关于 react license第一手资料,供大家阅读。

7450
来自专栏理论坞

60个设计师必备APP(下)

对设计师而言,好用的不仅是最好的iPad app,苹果的Marvel也是相当便利的设计工具。组合使用最好的iPhone app将为创意工作室创造更多可能性-更重...

1113
来自专栏互联网杂技

[译] 根据 OS 设计你的应用

Android 和 iOS 是市场上的两个主流操作系统。多数公司都会要求开发者开发对应的移动端应用。对于这些需要在两个平台上同时设计的应用,其中一个挑战就是在品...

36211

扫码关注云+社区