Detaillierte Einführung in den Python-Technologie-Stack und die Tool-Organisation

黄舟
Freigeben: 2017-05-07 11:09:11
Original
3134 Leute haben es durchsucht

Machen Sie es sich einfach, ich habe von vim auf PyChram umgestellt. Die integrierte Entwicklungsumgebung verfügt über deutlich bessere Funktionen wie Autovervollständigung und einstufiges Debugging, die zur Verbesserung der Arbeitseffizienz beitragen.


Lokale Umgebung

pip/easy_install-Paketverwaltung

  • viertualenv + virtualenvwrapper-Bibliothek/Versionsverwaltung , Umgebungsisolation

ipython/ipdb

  • Projektentwicklung

    Management-Tools
  • git
  • Web
  • Framework

Tornado: asynchron, hohe Leistung, neueste Version 4.0.
  • Kolben: leicht! Er kann verschiedene Komponenten für die Entwicklung flexibel kombinieren (Komponenten von Drittanbietern sind reichlich vorhanden), er ist einfach und effizient und lässt sich schnell entwickeln und warten.

Django

: Etwas schwer, mit vielen Konfigurationen und Konventionen können Sie schnell einige „Management“-Backends entwickeln.
    Es gibt auch viele Python-Web-Frameworks, und diese drei sind derzeit die Mainstream-Frameworks. Der Tornado, den ich derzeit bei meiner Arbeit verwende, weist eine hervorragende Leistung auf.
  • ORM
  • SQLAlchemy: Standard.
  • Pymongo: Zugriff auf
    Mongodb

    .

peewe: Ein leichteres ORM, einfach zu verstehen, nie in der Produktionsumgebung verwendet.
  • Datenbank
  • Relationale Datenbank

    :
  • MySQL
Kein SQL:

memcached

Cluster, wird hauptsächlich für zeitlich begrenzten Cache verwendetNachricht

Warteschlange

  • :
  • Operation in Python.

Projektbereitstellung

Server

  • , hauptsächlich für Lastausgleich, umgekehrte Generierung usw. verwendet.RabbitMQpika

, wird zum Bereitstellen von Django-Projekten verwendet.

    ein Python-WSGI-HTTP-Server
  • für

    UNIX, der zum Ausführen des Flask-Projekts verwendet wird nginx

  • Betrieb und Wartung Management

    uWSGI

  • : Alias, Salt Stack. Automatisierte Betriebs- und Wartungstools.

    gunicorn

    : Dieses Produkt wurde in Ruby entwickelt und wird in großem Umfang von Baidu und Xiaomi verwendet.

    : wird für die automatisierte Bereitstellung verwendet.
  • saltstack

  • Ein Prozessleitsystem, Konfiguration und Verwaltung verschiedener Programme, Prozessüberwachung, automatischer Neustart usw.
  • puppet

    Drei-Parteien-Bibliothek
  • fabric

    HTTP für Menschen, sehr einfach zu bedienen, sehr zu empfehlen
  • Supervisor

    Arbeiten Sie mit urllib2 oder der Anforderungsbibliothek für einfache Crawling- und Analysearbeiten zusammen

    Ein sehr leistungsstarkes Crawling-Framework, geeignet für umfangreiche Crawling-Aufgaben mit komplexen Anforderungen
  • requests

    Andere
  • Front-End-Grundlagen

    beautifulsoup

  • HTML, CSS,
  • Javascript

    , scrapy jquery

    ,
  • bootstrap
,

angularjs

,

react

, vue.js. Als Back-End-Ingenieur ist es auch notwendig, einige grundlegende Front-End-Kenntnisse zu verstehen. In meiner aktuellen Arbeit verwende ich werden häufig verwendet.

  • RESTful Schnittstelle.

  • MVC

  • Testen: Unit-Tests, Leistungstests.
    Unterschiede gibt es nur, wenn man sich die Codes anderer Leute anschaut und daraus lernt, sich zu verbessern.

  • Cloud Computing

    • Big Data: Hadoop-Ökosystem.

    • Virtualisierung: Docker, KVM, OpenStack.

    • Öffentliche Cloud: AWS, Alibaba Cloud, Azure, Kingsoft Cloud.

    • Private Cloud: Die private Cloud von Baidu ist gut aufgebaut und branchenführend bei verteilter Speicherung und Virtualisierung. Machen Sie es sich einfach, ich habe von vim auf PyChram umgestellt. Die integrierte Entwicklungsumgebung verfügt über deutlich bessere Funktionen wie Autovervollständigung und einstufiges Debugging, die zur Verbesserung der Arbeitseffizienz beitragen.

    Lokale Umgebung

    pip/easy_install-Paketverwaltung

    • viertualenv + virtualenvwrapper-Bibliothek/Versionsverwaltung , Umgebungsisolation

    ipython/ipdb

    • Projektentwicklung

      Management-Tools
    • git
    • Web Framework

    Tornado: asynchron, hohe Leistung, neueste Version 4.0.

    • Kolben: leicht! Er kann verschiedene Komponenten für die Entwicklung flexibel kombinieren (Komponenten von Drittanbietern sind reichlich vorhanden), er ist einfach und effizient und lässt sich schnell entwickeln und warten.

    Django: Etwas schwer, mit vielen Konfigurationen und Konventionen kann man schnell einige „Management“-Backends entwickeln.

    Es gibt auch viele Python-Web-Frameworks, und diese drei sind derzeit die Mainstream-Frameworks. Der Tornado, den ich derzeit bei meiner Arbeit verwende, weist eine hervorragende Leistung auf.

    • ORM

    • SQLAlchemy: Standard.

    • Pymongo: Zugriff auf Mongodb.

    peewe: Ein leichteres ORM, einfach zu verstehen, nie in der Produktionsumgebung verwendet.

    • Datenbank

    • Relationale Datenbank: MySQL

    • Kein SQL:

    Redis-Cache/Persistenz/spezielle Anforderungen (Counting-Ranking-Timeline usw.)

    • Memcached-Cluster, wird hauptsächlich für zeitlich begrenztes Caching verwendet

    mongodb

    • Verteilte Speicherung

    • HDFS: Hadopp-Ökologie

    • Hive: Analyseprotokoll

    Nachrichtenwarteschlange

    • :

      Vorgang in Python.
    • Projektbereitstellung
    Server

    • , hauptsächlich für Lastausgleich, Reverse-Generierung usw. verwendet.RabbitMQpika

    , wird zum Bereitstellen von Django-Projekten verwendet.

      ein Python-WSGI-HTTP-Server für UNIX, der zum Ausführen des Flask-Projekts verwendet wird
    • nginx

      Betriebs- und Wartungsmanagement
    • uWSGI

      : Alias, Salzstapel. Automatisierte Betriebs- und Wartungstools.
    • gunicorn

      : Dieses Produkt wurde in Ruby entwickelt und wird in großem Umfang von Baidu und Xiaomi verwendet.

      : wird für die automatisierte Bereitstellung verwendet.
    • saltstack

    • Ein Prozessleitsystem, Konfiguration und Verwaltung verschiedener Programme, Prozessüberwachung, automatischer Neustart usw.
    • puppet

      Drei-Parteien-Bibliothek
    • fabric

      HTTP für Menschen, sehr einfach zu bedienen, sehr zu empfehlen
    • Supervisor

      Arbeiten Sie mit urllib2 oder der Anforderungsbibliothek für einfache Crawling- und Analysearbeiten zusammen

      Ein großartiges Crawling-Framework, geeignet für umfangreiche Crawling-Aufgaben mit komplexen Anforderungen
    • requests

      Andere
    • Front-End-Grundlagen

      beautifulsoup

    • HTML, CSS, Javascript, JQuery, Bootstrap, AngularJS, React, Vue. js . Als Back-End-Ingenieur ist es auch notwendig, einige grundlegende Front-End-Kenntnisse zu verstehen. In meiner aktuellen Arbeit verwende ich
    • +

      , um das Backend-Managementsystem zu entwickeln. scrapy

    Software Engineering

    Entwurfsmuster: Obwohl Python in Java nicht über endlose Entwurfsmuster verfügt, werden auch grundlegende Entwurfsmuster verwendet. Kombination, Singleton-Modus, Dekorationsmodus, Fabrikmodus werden häufig verwendet.
    • bootstrapRESTful-Schnittstelle. angularjs

    MVC

    • Testen: Unit-Tests, Leistungstests.

      Unterschiede gibt es nur, wenn man sich die Codes anderer Leute anschaut und daraus lernt, sich zu verbessern.

    • Cloud Computing

    • Big Data: Hadoop-Ökosystem.

    • Virtualisierung: Docker, KVM, OpenStack.

    Öffentliche Cloud: AWS, Alibaba Cloud, Azure, Kingsoft Cloud.

    • Private Cloud: Die private Cloud von Baidu ist gut aufgebaut und branchenführend bei verteilter Speicherung und Virtualisierung.

    Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in den Python-Technologie-Stack und die Tool-Organisation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Verwandte Etiketten:
    Quelle:php.cn
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage