開發環境
本機環境
- ##pip/easy_install 套件管理
- viertualenv + virtualenvwrapper 函式庫/版本管理, 環境隔離
- ipython/ipdb
#專案開發
管理工具
Flask:輕量! 可以靈活組合各類元件進行開發(第三方元件很豐富), 簡單高效, 便於快速開發和維護。
-
Django
:有些重, 配置和約定眾多, 可以快速開發一些」管理」性質的後台。 - Python Web框架也是超多,目前主流的就是這三個了。目前工作中採用的Tornado,性能卓越。
ORM
-
SQLAlchemy:標配。
pymongo:訪問
資料庫
關係型資料庫:mysql
- No SQL:
redis-
快取
/持久/特殊需求(計數-排行榜-時間軸等)
memcached- 叢集, 多用於有時限性質的快取
##mongodb 分散式儲存
HDFS:hadopp生態
RabbitMQ
: python中
pika- 操作。
專案部署
- 伺服器
#nginx- , 主要用於負載平衡, 反代等
uWSGI
,用來部署Django專案。
gunicorn- a Python WSGI HTTP Server
for UNIX, 用來執行Flask專案
- 運維管理
saltstack- :別名,鹽堆疊。自動化維運工具。
puppet- :這貨是Ruby開發的,百度和小米都在大規模使用。
fabric
: 用於自動化部署。
配合urllib2或requests庫進項簡單的抓取分析工作
react
, vue.js。作為一個後端工程師,了解一些基本的前端知識也是必要的。目前工作中用到
bootstrap
雲端運算
開發環境
編輯器
本機環境
- ##pip/easy_install 套件管理
- viertualenv + virtualenvwrapper 函式庫/版本管理, 環境隔離
- ipython/ipdb
#專案開發
管理工具
- ##git
- Web框架
Tornado:非同步, 高效能, 最新版本4.0。
Flask:輕量! 可以靈活組合各類元件進行開發(第三方元件很豐富), 簡單高效, 便於快速開發和維護。 Django:有些重, 配置和約定眾多, 可以快速開發一些」管理」性質的後台。 - Python Web框架也是超多,目前主流的就是這三個了。目前工作中採用的Tornado,性能卓越。
- ORM
SQLAlchemy:標配。
peewe:一個更輕量的ORM,簡單了解,沒在生產環境用過。
- 資料庫
- 關係型資料庫:mysql
##No SQL: redis 快取/持久化/特殊需求(計數-排行榜-時間線等)
#memcached 叢集, 多用於有時限性質的快取-
mongodb 分散式儲存
HDFS:hadopp生態
Hive:分析log
訊息佇列
#RabbitMQ
:python中- pika
#操作。
專案部署伺服器
- #nginx
, 主要用於負載平衡, 反代等
uWSGI
,用來部署Django專案。
fabric
: 用於自動化部署。
Supervisor
A Process Control System, 設定管理各種程式, 進程監控, 自動重新啟動等。
三方函式庫
- requests
HTTP for humans, 非常好用, 強烈推薦
#beautifulsoup
配合urllib2或requests庫進項簡單的抓取分析工作
html, css,javascript , jquery,bootstrap,angularjs,react, vue.js。作為一個後端工程師,了解一些基本的前端知識也是必要的。目前工作中用到- bootstrap
+
angularjs 來開發後台管理系統。 軟體工程 設計模式:雖然Python不像Java裡沒完沒了的設計模式,基本的設計模式也會用到。組合,單例模式、裝飾器模式、工廠模式這幾個常用。 -
RESTful 介面。
MVC
-
測試:單元測試,效能測試。
有比較才有差距,多看別人程式碼,借鏡提升。 雲端運算 大數據:Hadoop生態。 虛擬化:Docker, KVM, OpenStack。
#########公有雲:AWS,阿里雲,Azure,金山雲。 ############私有雲:百度的私有雲建置的很不錯,分散式儲存、虛擬化業界領先。 ##########
以上是Python技術堆疊以及工具整理的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!