Python技术栈以及工具整理的详细介绍
开发环境
编辑器
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,简单了解,没在生产环境用过。
数据库
No SQL:
分布式存储
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 接口。
测试:单元测试,性能测试。
有比较才有差距,多看别人代码,借鉴提高。
云计算
大数据: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技术栈以及工具整理的详细介绍的详细内容,更多请关注其它相关文章!
下一篇: 一个动态ACL的案例