Home > Article > Backend Development > Detailed introduction to Python technology stack and tool organization
Use Just make it easy, I converted from vim to PyChram. The integrated development environment has much better functions such as auto-completion and single-step debugging, which help improve work efficiency.
Django: Somewhat heavy-duty, with many configurations and conventions, you can quickly develop some "management" backends. There are also many Python Web frameworks, and these three are currently the mainstream ones. The Tornado currently used in my work has excellent performance.
mongodb.
Relational database:mysql
redis Cache/Persistence/Special Requirements (Count-Ranking-Timeline, etc.)
RabbitMQ:
pika operation in python.
, mainly used for load balancing, reverse generation, etc.
, used to deploy Django projects.
a Python WSGI HTTP Server for
UNIX, used to run the Flask project
: Alias, salt stack. Automated operation and maintenance tools.
: This product was developed in Ruby and is used on a large scale by Baidu and Xiaomi.
: Used for automated deployment.
A Process Control System, configures and manages various programs, process monitoring, automatic restart, etc.
HTTP for humans, very easy to use, highly recommended
Cooperate with urllib2 or requests library for simple crawling and analysis work
jquery, bootstrap, angularjs, react, vue.js. As a back-end engineer, it is also necessary to understand some basic front-end knowledge. In my current work, I use bootstrap+angularjs to develop the backend management system.
single case mode, decorator mode, factory mode are commonly used.
RESTful Interface.
Test: Unit test, performance test.
Only by comparison can there be differences. Look at other people's codes and learn from them to improve.
Big data: Hadoop ecosystem.
Virtualization: Docker, KVM, OpenStack.
Public cloud: AWS, Alibaba Cloud, Azure, Kingsoft Cloud.
Private cloud: Baidu's private cloud is well built and leads the industry in distributed storage and virtualization.
vim / SublimeText2 / PyCharm
Use Just make it easy, I converted from vim to PyChram. The integrated development environment has much better functions such as auto-completion and single-step debugging, which help improve work efficiency.
pip/easy_install package management
viertualenv + virtualenvwrapper library/version management , Environment isolation
ipython/ipdb
git
Tornado: asynchronous, high performance, latest version 4.0.
Flask: Lightweight! It can flexibly combine various components for development (third-party components are abundant), it is simple and efficient, and facilitates rapid development and maintenance.
Django: Somewhat heavy, with numerous configurations and conventions, you can quickly develop some "management" backends.
There are also many Python Web frameworks, and these three are currently the mainstream ones. The Tornado currently used in my work has excellent performance.
SQLAlchemy: Standard.
pymongo: access mongodb.
peewe: A lighter ORM, simple to understand, never used in production environment.
Relational database: mysql
redis cache/persistence/special requirements (counting-ranking-timeline, etc.)
memcached cluster, mostly used for time-limited cache
mongodb
HDFS: hadopp ecology
Hive: Analysis log
RabbitMQ
: pika
in python operate.
##nginx, mainly used for load balancing, reverse generation, etc.
uWSGI, used to deploy Django projects.
gunicorn a Python WSGI HTTP Server for UNIX, used to run the Flask project
saltstack: Alias, salt stack. Automated operation and maintenance tools.
puppet: This product was developed in Ruby and is used on a large scale by Baidu and Xiaomi.
fabric: Used for automated deployment.
Supervisor A Process Control System, configures and manages various programs, process monitoring, automatic restart, etc.
requests HTTP for humans, very easy to use, highly recommended
beautifulsoup Cooperate with urllib2 or requests library for simple crawling and analysis work
Very awesome crawling framework, Suitable for large-scale crawling tasks with complex requirements
+angularjs
to develop the backend management system.
The above is the detailed content of Detailed introduction to Python technology stack and tool organization. For more information, please follow other related articles on the PHP Chinese website!