Python 在騰訊雲的實踐
作者:李力,騰訊雲的佈道師、CVM 技術負責人 騰訊雲調度管理系統研發負責人,騰訊雲佈道師,主要負責騰訊公有雲/私有雲後台框架的設計、實現及運營,在 KVM 虛擬化、sdn/vpc、linux container 上有多年的實踐經驗。
來源:https://cloud.tencent.com/community/article/233054
本文是李力去年在 PyCon China 上的分享內容。
騰訊是一家大量使用 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 技術的一些坑。
題圖:pexels,CC0 授權。
點擊展開全文
※可視化爬蟲 Portia 試用體驗
※Flask 進階系列:SQLAlchemy 擴展學習
※利用VPS下載YouTube視頻並上傳至百度雲網盤
※Flask 插件學習:Flask-WTF和WTForms 擴展
※用 TensorFlow 讓機器人唱首歌給你聽
TAG:編程派 |
※Python yield與實現
※Python學習筆記-Python的安裝
※如何在Windows下開發Python:在cmd下運行Python腳本
※Python小技巧:QPython,一個在手機上運行Python的神器
※深度學習之CapsuleNets理論與Python實踐!
※讀懂Python的Mock對象庫(2)
※讀懂Python的Mock對象庫(1)
※使用 Python 和 Prometheus 跟蹤天氣
※Python 的 ChatOps 庫:Opsdroid 和 Errbot
※Python的for循環
※大新聞!Facebook 開源了 Python 實現的物體檢測研究平台 Detectron
※實戰microPython(三)uPyBoard是如何控制機器人的
※用 greenlet 實現 Python 中的並發
※Ubuntu下系統在帶Python和conda中安裝的Python共存問題
※在Python中如何使用sorted()和sort()函數
※Numba和Cython如何加速Python代碼
※為什麼Python如此火?Why Python is so popular?
※對 Python 開發者而言,IPython 仍然是 Jupyter Notebook 的核心
※Python 中的字典—Python 基礎
※Python中使用Type hinting 和 annotations