首頁  >  文章  >  後端開發  >  Python技術堆疊以及工具整理的詳細介紹

Python技術堆疊以及工具整理的詳細介紹

黄舟
黄舟原創
2017-05-07 11:09:113113瀏覽


開發環境

編輯器

  • vim / SublimeText2 / PyCharm
    用著順手就好,我是由vim轉PyChram的。整合開發環境自動補全、單步驟調試等功能好很多,有利於提高工作效率。

本機環境

  • ##pip/easy_install 套件管理

  • viertualenv + virtualenvwrapper 函式庫/版本管理, 環境隔離

  • ipython/ipdb

#專案開發

管理工具

  • ##git
  • Web
  • 框架

  • #Tornado:非同步, 高效能, 最新版本4.0。

Flask:輕量! 可以靈活組合各類元件進行開發(第三方元件很豐富), 簡單高效, 便於快速開發和維護。

  • Django
  • :有些重, 配置和約定眾多, 可以快速開發一些」管理」性質的後台。
  • Python Web框架也是超多,目前主流的就是這三個了。目前工作中採用的Tornado,性能卓越。

    ORM
  • SQLAlchemy:標配。

pymongo:訪問資料庫

  • 關係型資料庫mysql

  • No SQL:

  • redis
  • 快取

    /持久/特殊需求(計數-排行榜-時間軸等)

    memcached
  • 叢集, 多用於有時限性質的快取

  • ##mongodb
  • 分散式儲存

HDFS:hadopp生態

  • #Hive:分析log##訊息佇列

RabbitMQ

: python中
    pika
  • 操作。

    專案部署
  • 伺服器

  • #nginx
  • , 主要用於負載平衡, 反代等

    uWSGI

    ,用來部署Django專案。

    gunicorn
  • a Python WSGI HTTP Server

    for UNIX, 用來執行Flask專案

  • 運維管理

  • saltstack
  • :別名,鹽堆疊。自動化維運工具。

  • puppet
  • :這貨是Ruby開發的,百度和小米都在大規模使用。

  • fabric
: 用於自動化部署。

  • Supervisor A Process Control System, 設定管理各種程式, 進程監控, 自動重新啟動等。

  • 三方函式庫

  • requests
  • HTTP for humans, 非常好用, 強烈推薦

  • #beautifulsoup
配合urllib2或requests庫進項簡單的抓取分析工作

    scrapy
  • 很牛的抓取框架,適合規模較大,需求複雜的的抓取任務

    其他前端基礎##html, css, javascriptjquerybootstrap

    angularjs
react

, vue.js。作為一個後端工程師,了解一些基本的前端知識也是必要的。目前工作中用到

bootstrap
    +
  • angularjs

    來開發後台管理系統。 軟體工程

    設計模式###:Python雖然不像Java裡沒完沒了的設計模式,基本的設計模式也會用到。組合,###單例模式###、###裝飾器模式###、###工廠模式###這幾個常用。 ###
  • RESTful 介面

  • MVC

  • #測試:單元測試,效能測試。
    有比較才有差距,多看別人程式碼,借鏡提升。

雲端運算

  • 大數據:Hadoop生態。

  • 虛擬化:Docker, KVM, OpenStack。

  • 公有雲:AWS,阿里雲,Azure,金山雲。

  • 私有雲:百度的私有雲建置的很不錯,分散式儲存、虛擬化業界領先。

開發環境

編輯器

  • vim / SublimeText2 / PyCharm
    用著順手就好,我是由vim轉PyChram的。整合開發環境自動補全、單步驟調試等功能好很多,有利於提高工作效率。

本機環境

  • ##pip/easy_install 套件管理

  • viertualenv + virtualenvwrapper 函式庫/版本管理, 環境隔離

  • ipython/ipdb

#專案開發

管理工具

  • ##git

  • Web框架


  • Tornado:非同步, 高效能, 最新版本4.0。

    Flask:輕量! 可以靈活組合各類元件進行開發(第三方元件很豐富), 簡單高效, 便於快速開發和維護。
  • Django:有些重, 配置和約定眾多, 可以快速開發一些」管理」性質的後台。
  • Python Web框架也是超多,目前主流的就是這三個了。目前工作中採用的Tornado,性能卓越。

  • ORM

SQLAlchemy:標配。

  • pymongo:訪問mongodb。

peewe:一個更輕量的ORM,簡單了解,沒在生產環境用過。

  • 資料庫

  • 關係型資料庫:mysql

  • ##No SQL:
  • redis 快取/持久化/特殊需求(計數-排行榜-時間線等)

    #memcached 叢集, 多用於有時限性質的快取
  • mongodb
  • 分散式儲存

    HDFS:hadopp生態
  • Hive:分析log

  • 訊息佇列

#RabbitMQ
    :python中
  • pika

    #操作。

  • 專案部署
  • 伺服器

  • #nginx

    , 主要用於負載平衡, 反代等

uWSGI

,用來部署Django專案。

  • gunicorn a Python WSGI HTTP Server for UNIX, 用來運行Flask專案

  • 維運管理

  • saltstack

    :別名,鹽堆疊。自動化維運工具。

  • puppet

    :這貨是Ruby開發的,百度和小米都在大規模使用。

fabric

: 用於自動化部署。

  • Supervisor A Process Control System, 設定管理各種程式, 進程監控, 自動重新啟動等。

  • 三方函式庫

  • requests

    HTTP for humans, 非常好用, 強烈推薦

#beautifulsoup

配合urllib2或requests庫進項簡單的抓取分析工作

  • scrapy

    很牛的抓取框架,適合規模較大,需求複雜的的抓取任務其他

  • 前端基礎

    html, css,javascript , jquery,bootstrap,angularjs,react, vue.js。作為一個後端工程師,了解一些基本的前端知識也是必要的。目前工作中用到
  • bootstrap

    +

    angularjs
  • 來開發後台管理系統。
  • 軟體工程
  • 設計模式:雖然Python不像Java裡沒完沒了的設計模式,基本的設計模式也會用到。組合,單例模式、裝飾器模式、工廠模式這幾個常用。

  • RESTful 介面。

MVC
  • 測試:單元測試,效能測試。
  • 有比較才有差距,多看別人程式碼,借鏡提升。
  • 雲端運算
  • 大數據:Hadoop生態。
  • 虛擬化:Docker, KVM, OpenStack。
#########公有雲:AWS,阿里雲,Azure,金山雲。 ############私有雲:百度的私有雲建置的很不錯,分散式儲存、虛擬化業界領先。 ##########

以上是Python技術堆疊以及工具整理的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn