>  기사  >  백엔드 개발  >  Python 기술 스택 및 도구 구성에 대한 자세한 소개

Python 기술 스택 및 도구 구성에 대한 자세한 소개

黄舟
黄舟원래의
2017-05-07 11:09:113113검색

사용하기 쉽게 만들어서 vim에서 PyChram으로 변환했습니다. 통합 개발 환경에는 자동 완성, 단일 단계 디버깅 등 훨씬 더 나은 기능이 있어 작업 효율성을 높이는 데 도움이 됩니다.


로컬 환경

pip/easy_install 패키지 관리

  • viertualenv + virtualenvwrapper 라이브러리/버전 관리 , 환경 격리

ipython/ipdb

  • 프로젝트 개발

    관리 도구
  • git
  • 프레임워크

Tornado: 비동기식, 고성능, 최신 버전 4.0.
  • Flask: 경량! 개발을 위해 다양한 구성 요소를 유연하게 결합할 수 있으며(타사 구성 요소가 풍부함) 간단하고 효율적이며 빠르게 개발 및 유지 관리가 쉽습니다.

Django

: 약간 무겁고 구성과 규칙이 많아 일부 "관리" 백엔드를 빠르게 개발할 수 있습니다.
    Python 웹 프레임워크도 많이 있는데 이 세 가지가 현재 주류입니다. 현재 제가 사용하고 있는 토네이도는 성능이 매우 뛰어납니다.
  • ORM
  • SQLAlchemy: 표준.
  • pymongo:
    mongodb

    에 액세스합니다.

peewe: 더 가볍고 이해하기 쉬우며 프로덕션 환경에서는 절대 사용되지 않는 ORM입니다.
  • 데이터베이스
  • 관계형 데이터베이스

    :
  • mysql
SQL 없음:

memcached

클러스터, 주로 시간 제한이 있는 캐시에 사용됨메시지

대기열

  • :
  • Python에서의 작업입니다.

프로젝트 배포

서버

  • 주로 로드밸런싱, 역생성 등에 사용됩니다.RabbitMQpika

, Django 프로젝트를 배포하는 데 사용됩니다.

    Flask 프로젝트를 실행하는 데 사용되는 UNIX용
  • Python WSGI HTTP 서버 nginx

  • 운영 및 유지 관리 관리

    uWSGI

  • : 별칭, 솔트스택. 자동화된 운영 및 유지 관리 도구.

    gunicorn

    : 이 제품은 Ruby로 개발되었으며 Baidu와 Xiaomi에서 대규모로 사용하고 있습니다.

    : 자동화된 배포에 사용됩니다.
  • saltstack

  • 프로세스 제어 시스템으로 각종 프로그램을 구성 및 관리하고 프로세스 모니터링, 자동 재시작 등을 수행합니다.
  • puppet

    3자 라이브러리
  • fabric

    인간을 위한 HTTP, 매우 사용하기 쉽고 강력히 권장됨
  • Supervisor

    간단한 크롤링 및 분석 작업을 위해 urllib2 또는 요청 라이브러리와 협력

    요구 사항이 복잡한 대규모 크롤링 작업에 적합한 훌륭한 크롤링 프레임워크
  • requests

    기타
  • 프런트엔드 기본

    beautifulsoup

  • html, css,
  • javascript

    , scrapyjquery

    ,
  • 부트스트랩
,

angularjs

,

react

, vue.js. 백엔드 엔지니어로서 기본적인 프론트엔드 지식도 이해해야 합니다. 현재 작업에서는 등이 많이 사용됩니다.

  • RESTful 인터페이스.

  • MVC

  • 테스트: 단위 테스트, 성능 테스트.
    다른 사람의 코드를 보고 배워서 비교해야 차이가 있습니다.

  • 클라우드 컴퓨팅

    • 빅 데이터: Hadoop 생태계.

    • 가상화: Docker, KVM, OpenStack.

    • 퍼블릭 클라우드: AWS, Alibaba Cloud, Azure, Kingsoft Cloud.

    • 프라이빗 클라우드: Baidu의 프라이빗 클라우드는 잘 구축되어 있으며 분산 스토리지 및 가상화 분야에서 업계를 선도하고 있습니다. 사용하기 쉽게 만들어서 vim에서 PyChram으로 변환했습니다. 통합 개발 환경에는 자동 완성, 단일 단계 디버깅 등 훨씬 더 나은 기능이 있어 작업 효율성을 높이는 데 도움이 됩니다.

    로컬 환경

    pip/easy_install 패키지 관리

    • viertualenv + virtualenvwrapper 라이브러리/버전 관리 , 환경 격리

    ipython/ipdb

    • 프로젝트 개발

      관리 도구
    • git
    • 웹 프레임워크

    Tornado: 비동기식, 고성능, 최신 버전 4.0.

    • Flask: 경량! 개발을 위해 다양한 구성 요소를 유연하게 결합할 수 있으며(타사 구성 요소가 풍부함) 간단하고 효율적이며 빠르게 개발 및 유지 관리가 쉽습니다.

    Django: 구성과 규칙이 많고 약간 무겁기 때문에 일부 "관리" 백엔드를 빠르게 개발할 수 있습니다.

    Python 웹 프레임워크도 많이 있는데 이 세 가지가 현재 주류입니다. 현재 제가 사용하고 있는 토네이도는 성능이 매우 뛰어납니다.

    • ORM

    • SQLAlchemy: 표준.

    • pymongo: mongodb에 액세스합니다.

    peewe: 더 가볍고 이해하기 쉬우며 프로덕션 환경에서는 절대 사용되지 않는 ORM입니다.

    • 데이터베이스

    • 관계형 데이터베이스: mysql

    • SQL 없음:

    redis 캐시/지속성/특수 요구 사항(계산-순위-타임라인 등)

    • memcached 클러스터, 주로 시간 제한 캐싱에 사용됨

    mongodb

    • 분산 스토리지

    • HDFS: hadopp 생태

    • Hive: 분석 로그

    Message Queue

    • : Python의

      작업.
    • 프로젝트 배포
    서버

    • 주로 로드밸런싱, 역생성 등에 사용됩니다.RabbitMQpika

    , Django 프로젝트를 배포하는 데 사용됩니다.

      Flask 프로젝트 실행에 사용되는 UNIX용 Python WSGI HTTP 서버
    • nginx

      운영 및 유지 관리
    • uWSGI

      : 별칭, 솔트 스택. 자동화된 운영 및 유지 관리 도구.
    • gunicorn

      : 이 제품은 Ruby로 개발되었으며 Baidu와 Xiaomi에서 대규모로 사용하고 있습니다.

      : 자동화된 배포에 사용됩니다.
    • saltstack

    • 프로세스 제어 시스템으로 각종 프로그램을 구성 및 관리하고 프로세스 모니터링, 자동 재시작 등을 수행합니다.
    • puppet

      3자 라이브러리
    • fabric

      인간을 위한 HTTP, 매우 사용하기 쉽고 강력히 권장됨
    • Supervisor

      간단한 크롤링 및 분석 작업을 위해 urllib2 또는 요청 라이브러리와 협력

      요구 사항이 복잡한 대규모 크롤링 작업에 적합한 훌륭한 크롤링 프레임워크
    • requests

      기타
    • 프런트엔드 기본

      beautifulsoup

    • html, css, javascript, jquery, bootstrap, anglejs, React, vue. .js 백엔드 엔지니어로서 기본적인 프론트엔드 지식도 이해해야 합니다. 현재 작업에서는
    • +

      를 사용하여 백엔드 관리 시스템을 개발하고 있습니다. scrapy

    소프트웨어 공학

    디자인 패턴: Python은 Java에서 무한한 디자인 패턴이 없지만 기본 디자인 패턴도 사용됩니다. 일반적으로 조합, 싱글톤 모드, 데코레이터 모드, 팩토리 모드가 사용됩니다.
    • bootstrapRESTful 인터페이스. angularjs

    MVC

    • 테스팅: 단위 테스트, 성능 테스트.

      다른 사람의 코드를 보고 배워서 비교해야 차이가 있습니다.

    • 클라우드 컴퓨팅

    • 빅 데이터: Hadoop 생태계.

    • 가상화: Docker, KVM, OpenStack.

    퍼블릭 클라우드: AWS, Alibaba Cloud, Azure, Kingsoft Cloud.

    • 프라이빗 클라우드: Baidu의 프라이빗 클라우드는 잘 구축되어 있으며 분산 스토리지 및 가상화 분야에서 업계를 선도하고 있습니다.

    위 내용은 Python 기술 스택 및 도구 구성에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.