>백엔드 개발 >파이썬 튜토리얼 >37가지 Python 웹 개발 프레임워크 요약

37가지 Python 웹 개발 프레임워크 요약

王林
王林앞으로
2023-04-12 22:52:083962검색

37가지 Python 웹 개발 프레임워크 요약

Q: 웹 프레임워크란 정확히 무엇인가요? A: 웹 프레임워크는 주로 웹사이트 개발에 사용됩니다. 개발자는 웹 프레임워크를 기반으로 자신만의 비즈니스 로직을 구현합니다. 웹 프레임워크는 많은 기능을 구현하고 비즈니스 논리를 구현하기 위한 공통 방법을 제공합니다.

Q: 웹 프레임워크의 역할은 무엇인가요? A: 웹 프레임워크를 사용하면 비즈니스 로직 이외의 많은 기능을 직접 개선할 필요가 없으며 대신 프레임워크의 기존 기능을 사용할 수 있습니다. 웹 프레임워크는 웹사이트 개발 시 작업량을 줄여줍니다.

Q: 왜 웹 프레임워크를 사용해야 합니까? A: 웹 프레임워크는 주로 웹 사이트 개발에 사용되며, 이를 통해 데이터 상호 작용을 실현하고 비즈니스 기능을 향상할 수 있습니다. 웹사이트 개발을 위해 웹 프레임워크를 사용할 때 데이터 캐싱, 데이터베이스 접근, 데이터 보안 검증 등의 측면에서 이를 직접 다시 구현할 필요는 없습니다. 대신 비즈니스 로직 관련 코드를 프레임워크에 작성하면 됩니다.

라이브러리 정렬은 사용자 수와 문서 활동을 기준으로 합니다. 더 완전한 문서, 더 많은 기술 축적 ​​및 더 번영하는 커뮤니티를 갖기 때문에 최상위 프레임워크를 사용하는 것이 좋습니다. 더 나은 지원을 받아 해결할 수 없는 문제에 직면했을 때 더 빠르고 효율적으로 솔루션을 찾을 수 있습니다.

1. Django 프레임워크

공식 웹사이트:https://www.php.cn/link/f1903f234d3ba4da38a18aa25751457d

장점 : 고급 Python 웹 개발입니다. 기능을 갖춘 프레임워크 개발 속도가 빠르고 코드가 적으며 확장성이 뛰어납니다. Django는 MTV(Model, Template, View) 모델을 사용하여 리소스를 구성합니다. 프레임워크에는 풍부한 기능과 가장 많은 템플릿 확장 옵션이 있습니다. 전문가들에게 Django는 의심할 여지 없이 최고의 Python용 웹 개발 프레임워크입니다.

단점: 경량 애플리케이션에 필요하지 않은 일부 기능 모듈이 포함되어 있으며 Flask만큼 가볍지 않습니다. 많은 클래스와 메소드를 과도하게 캡슐화하면 직접 사용하기는 더 쉬워지지만 변경하기는 더 어렵습니다. C, C++ 성능에 비해 Djang 성능은 낮습니다. 템플릿은 코드와 스타일의 완전한 분리를 실현하고 Python 코드가 템플릿에 표시되는 것을 허용하지 않으며 충분히 유연하지 않습니다. 게다가 학습 곡선도 상대적으로 가파르다.

37가지 Python 웹 개발 프레임워크 요약


2.Flask 프레임워크

공식 웹사이트: https://www.php.cn/link/d12f3b5c457a92abbc87 93 9406df183f장점: Flask는 Python 웹 개발을 위한 마이크로 프레임워크입니다. 엄밀히 말하면 웹 서버 지원만 제공하며 전체 스택 개발 지원은 제공하지 않습니다. 그러나 Flask는 매우 가볍고 간단하여 이를 기반으로 웹 시스템을 구축하는 데 몇 분 밖에 걸리지 않으며, 특히 소형 및 마이크로 프로토타입 시스템 개발에 적합합니다. 더 적은 시간을 소비하고 사용 가능한 시스템을 생산하는 것은 매우 비용 효율적인 선택입니다.

단점: 대규모 웹사이트 개발의 경우 라우팅 매핑 규칙을 설계해야 합니다. 그렇지 않으면 코드가 혼란스러워집니다. 초보자의 경우 품질이 낮은 코드를 사용하여 "나쁜 웹 애플리케이션"을 만들기 쉽습니다.

37가지 Python 웹 개발 프레임워크 요약

3. 피라미드 프레임워크

공식 웹사이트: https://www.php.cn/link/9ec0cf d c84044494e10582436e013e64

장점: 확장성이 뛰어나고 유연한 Python 웹 개발 프레임워크입니다. 시작하기가 매우 쉽고 개발과 디자인이 동시에 이루어지는 중간 규모 시나리오에 더 적합합니다. Pyramid는 절대적으로 엄격한 프레임워크 정의를 제공하지 않으며 필요에 따라 확장 및 개발이 가능하므로 고급 프로그래머에게 매우 친숙합니다.

단점: 중국에서는 잘 알려지지 않았고, 고급 사용법은 소스코드를 읽어야 영감을 얻을 수 있습니다. 기본적으로 사용되는 Chameleon 템플릿에서는 유연성이 중요한 요소가 아닙니다.

37가지 Python 웹 개발 프레임워크 요약

4.web.py Framework

공식 웹사이트: https://www.php.cn/link/8d4112ce0aabe7aeef422 c1 36a222624

장점: 이름에서 알 수 있듯이 web.py는 Python을 개발 언어로 사용하는 간단하고 강력한 웹 프레임워크입니다. 러시아 최고의 검색 엔진인 Yandex는 이 프레임워크를 기반으로 개발되었습니다. Guido van Rossum은 이것이 최고의 Python 웹 프레임워크라고 믿습니다. 증명할 사실이 있고 전문가가 승인할 것이 있으니 활용해보세요!

단점: Web.py는 다른 프레임워크처럼 Python 3 호환성을 최신 상태로 유지하지 않습니다. 이는 비동기 구문에 대한 지원이 부족함을 의미할 뿐만 아니라 더 이상 사용되지 않는 기능에 대한 버그가 부족함을 의미합니다. 또한 관리자가 Python 2의 지원 수명 주기가 끝난 후에도 Web.py를 최신 상태로 유지할 계획이 있는지 여부가 불분명합니다.

37가지 Python 웹 개발 프레임워크 요약

5. 토네이도 프레임워크

공식 웹사이트: https://www.php.cn/link/76330c26dea623 32 de2ca7b4a9ef51ec

장점: Tornado는 비동기 네트워크 기능 라이브러리를 기반으로 하는 웹 개발 프레임워크이므로 수만 개의 개방형 연결을 지원할 수 있으며 웹 서비스가 효율적이고 안정적입니다. Tornado는 동시성이 높은 시나리오의 웹 시스템에 적합하다는 것을 알 수 있으며, 개발 프로세스에서는 유연성이 떨어지는 Tornado에서 제공하는 프레임워크를 사용해야 하므로 시나리오를 결정한 후 사용을 고려해도 늦지 않습니다.

단점: Tornado 5.0은 Python의 기본 비동기 기능과의 통합이 향상되었습니다. 따라서 Python 3.3은 더 이상 지원되지 않으며 Python 3.5 사용자는 Python 3.5.2 이상을 사용해야 합니다. Tornado 6.0에는 Python 3.5 이상이 필요하며 Python 2 지원이 완전히 중단됩니다.

37가지 Python 웹 개발 프레임워크 요약

6. TurboGears 프레임워크

공식 웹사이트: https://www.php.cn/link/ce1d2a5e1884a6c502a67 5db d0d3928e

장점: TurboGears 최신 버전은 TurboGears, Django, Rails 및 기타 프레임워크의 초기 버전의 단점을 해결하려고 시도합니다. 이는 다중 데이터베이스, JavaScript 도구 세트, 다중 데이터 교환 형식 등을 지원합니다. 물론 개발 효율성이 매우 높으며 고도로 향상되었습니다. 확장 가능합니다. 그것과 Django 중 어느 것이 더 낫나요? Django 커뮤니티가 더 활성화되는 것이 더 중요하다고 말하기는 정말 어렵습니다.

단점: TurboGears의 일부 단점에는 기본 관리 기능, 소수의 타사 응용 프로그램 및 초보적인 문서가 포함됩니다. TurboGears의 가장 큰 과제 중 하나는 그것이 얼마나 압도적인지입니다. 다른 구성 요소와 혼합하면 무한한 유연성을 제공하기 때문에 작업을 완료할 경로를 결정할 때 지나치게 복잡합니다.

37가지 Python 웹 개발 프레임워크 요약

7. CherryPy 프레임워크

공식 웹사이트: https://www.php.cn/link/29056bc4790af32aa8458e3f bc 737485

장점: CherryPy 개발자는 다른 객체 지향 프로그램과 유사한 설계 방법에 따라 웹 시스템을 개발하고 최소한의 코드와 가장 간결한 방법을 사용할 수 있습니다. CherryPy는 10년 동안 개발되었으며 안정성이 좋으며 소규모 웹 시스템과 순수 Python 프로그래머에게 매우 적합합니다. 당신은 무엇을 느끼나요? 파이썬은 세계를 지배할 잠재력을 가지고 있습니다! 기다리고 보자.

단점: 웹 페이지를 제공하는 데 필요한 최소한의 콘텐츠만 포함하는 것 외에도 가능한 한 "웹 프레임워크"가 아닌 다른 종류의 Python 애플리케이션과 같은 느낌을 주도록 노력해야 합니다. CherryPy에는 낮은 수준의 빌딩 블록 역할을 하는 비트가 포함되어 있습니다. 세션 식별자 및 쿠키 처리가 포함되지만 HTML 템플릿은 포함되지 않습니다. Bottle과 마찬가지로 CherryPy는 정적 파일을 제공하기 위해 경로를 디스크의 디렉터리에 매핑하는 방법을 제공합니다.

37가지 Python 웹 개발 프레임워크 요약

8. Falcon Framework

공식 웹사이트: https://www.php.cn/link/ff8c1a3bd0c441439a0a081e560c 85fc

장점: Falcon은 지원 대규모 마이크로서비스 API 또는 모바일 앱 백엔드 응답을 위한 웹 개발 프레임워크로, 완전히 Python을 기반으로 하며 매우 높은 성능, 안정성 및 확장성을 제공합니다. Falcon은 독특한 포지셔닝과 독특한 기능을 가지고 있습니다. 앱 개발자라면 백엔드 시스템을 구축할 때 Falcon을 고려해볼 수도 있습니다. 후회하지 않을 것입니다.

단점: Falcon의 단점은 라우팅, 미들웨어, 후크 등 패키징 모듈이 너무 적다는 점이지만, 그 외에 다른 기능(베어 쉘)을 제공하지 않는다는 점입니다. 확인과 같은 추가 기능을 사용하려면 개발자가 확장 기능을 개발해야 합니다. REST API를 구축하는 데 사용하도록 설계되었기 때문입니다. Asgineer Framework 3e533

37가지 Python 웹 개발 프레임워크 요약장점:

Asgineer는 친숙한 API를 제공하면서 가능한 한 적은 추상화를 사용하여 비동기 웹 애플리케이션을 작성하기 위한 도구입니다. 가이드와 참고 자료를 읽는 데는 몇 분 밖에 걸리지 않습니다! Uvicorn에서 Asgineer를 실행하면 사용 가능한 가장 빠른 웹 프레임워크 중 하나입니다. http 긴 폴링, 서버 측 이벤트(SSE) 및 웹소켓을 지원합니다. 그리고 올바른(그리고 빠른) 방식으로 자산을 서비스할 수 있는 유틸리티를 갖추십시오.

단점: 중국어 문서가 부족합니다.

10. Bottle Framework

공식 웹사이트: https://www.php.cn/link/7bd87e2f279ba0141a9795e201bf1a53

장점:

병은 A입니다. 빠르고 간단하며 가벼운 Python용 WSGI 마이크로 웹 프레임워크입니다. Python 표준 라이브러리 외에는 종속성이 없는 단일 파일 모듈로 배포됩니다. 깨끗하고 동적 URL을 지원합니다. mako, jinja2 및 cheetah 템플릿을 지원하는 빠르고 Pythonic 내장 템플릿 엔진입니다. 양식 데이터, 파일 업로드, 쿠키, 헤더 및 기타 HTTP 관련 메타데이터에 쉽게 액세스할 수 있습니다.

단점: 병 미니멀리즘의 한 가지 결과는 일부 기능이 존재하지 않는다는 것입니다. CSRF 보호와 같은 기능을 포함한 양식 유효성 검사는 지원되지 않습니다. 높은 수준의 사용자 상호 작용을 지원하는 웹 애플리케이션을 구축하려면 이를 직접 추가해야 합니다.

11.Emmett Framework공식 웹사이트:

https://www.php.cn/link/ffe10334251de1dc98339d99ae4743ba

37가지 Python 웹 개발 프레임워크 요약장점:

우아한 글쓰기 코드, 제품에 집중하세요. 기본 프레임워크보다는 제품에 더 많은 시간을 투자해야 합니다. Emmett은 배우고 이해하기 쉬운 간단한 구문으로 개발 프로세스를 단순화하도록 설계되었기 때문에 발명가의 프레임워크입니다. 라우터와 불편한 모드 사이에서 시간을 낭비하지 마십시오. 애플리케이션 경로를 적을 때마다 모든 것이 눈앞에 명확하게 나타납니다.

단점: 중국어 문서가 부족합니다.

37가지 Python 웹 개발 프레임워크 요약

12.apidaora 프레임워크

공식 웹사이트: https://www.php.cn/link/c37a21223db1cda645af1264df751f 7f

장점: 유형 Annotations는 요청/응답을 데이터 클래스 및 사전으로 선언하고 모든 asgi 서버에서 실행할 수 있는 가장 빠른 Python API 프레임워크 중 하나인 jsondaora를 사용하여 입력 데이터의 유효성을 검사합니다.

단점: 중국어 문서가 부족합니다.

37가지 Python 웹 개발 프레임워크 요약

13. Quixote Framework

공식 웹사이트: https://www.php.cn/link/5f0453f78909173a7ce2eb874d2a7f5 2

장점: 키호테 예 Python을 사용하여 웹 기반 애플리케이션을 작성하기 위한 프레임워크입니다. 그 목표는 유연성과 고성능입니다. Quixote 앱은 기존 앱처럼 구조화되는 경향이 있습니다. 웹페이지 형식을 지정하는 논리는 Python 클래스와 함수로 구성됩니다. Quixote는 프리젠테이션 로직과 "백엔드" 로직을 분리하지 않습니다. 대신 전통적인 기술을 사용하는 것이 좋습니다. 예를 들어, 한 가지 해결책은 프레젠테이션 로직을 자체 하위 패키지에 넣는 것입니다.

단점: 키호테는 적극적으로 유지 관리되지만 릴리스 빈도는 낮습니다. 최근 개발은 버그 수정, 표준 준수 개선, Quixote의 유연성 향상에 중점을 두었습니다.

37가지 Python 웹 개발 프레임워크 요약

14.reahl Framework

공식 웹사이트: https://www.php.cn/link/4e0ccd2b894f717df5ebc12f4282ee70

장점: reahl 개발자가 웹 애플리케이션을 완전히 Python으로 작성할 수 있도록 하는 개방형 프레임워크입니다. Python을 유일한 개발 언어로 사용하는 것이 가장 큰 특징입니다. 또한, Real은 일반적인 기능적 웹 시스템을 개발하는 데 충분히 명확하고 실행 가능한 매우 명확하고 간결한 개발 구성 요소를 제공합니다.

단점: 추상적인 어휘를 제공할 때 일부 고급 사용자 인터페이스 효과를 마스터할 수 없습니다. 현재 Sass를 사용하여 Bootstrap의 수정된 버전을 구축하는 것은 허용되지 않으며 고급 사용자 인터페이스 모드를 지원합니다.

37가지 Python 웹 개발 프레임워크 요약

15.hug Framework

공식 웹사이트: https://www.php.cn/link/e834cb114d33f729dbc9c7fb0c6bb607

장점: 포옹 예 Python 3 API 개발 프레임워크입니다. 소프트웨어 엔지니어가 API를 한 번 개발한 후 필요할 때 다시 사용할 수 있도록 설계되었습니다. Hug 프레임워크는 다양한 인터페이스를 제공하여 API 개발을 단순화합니다. 이것이 이 프레임워크가 Python 3에서 가장 빠른 프레임워크 중 하나로 알려진 주된 이유입니다.

단점: 동기 프레임워크인 이전 WSGI 표준을 사용하므로 WebSocket 및 기타와 같은 비동기 요청을 처리할 수 없지만 어쨌든 여전히 매우 좋은 성능을 가지고 있습니다.

37가지 Python 웹 개발 프레임워크 요약

16. BlackSheep Framework

공식 웹사이트: https://www.php.cn/link/47bd8ac1becf213f155a82244b4a696a

장점: BlackSheep은 비동기식 Python을 사용하여 이벤트 기반 웹 애플리케이션을 구축하기 위한 웹 프레임워크입니다. Flask, ASP.NET Core 및 Yury Selivanov의 작업에서 영감을 받았습니다.

단점: 중국어 문서가 부족합니다.

37가지 Python 웹 개발 프레임워크 요약

17. Index.py 프레임워크

공식 웹사이트: https://www.php.cn/link/374939012129c174e451f0f64be3bfe a

장점: ASGI3 구현 인터페이스를 사용하고 경로 조회를 위해 Radix Tree를 사용합니다. 가장 빠른 Python 웹 프레임워크 중 하나입니다. 모든 기능은 고성능 웹 서비스를 빠르게 개발하는 데 도움이 됩니다. 다수의 올바른 유형 주석, 유연하고 효율적인 라우팅 시스템, 시각적 API 인터페이스 및 온라인 디버깅을 갖추고 있으며 서버 전송 이벤트 및 WebSocket을 지원하고 원클릭 배포 명령(uvicorn 및 gunicorn 기반)이 제공되며 다음을 사용할 수 있습니다. 사용 가능한 ASGI 생태계.

단점: Index.py에는 내장된 데이터베이스, 캐시 및 기타 기능이 없습니다. 선택이 어려우시면 Django를 직접 이용해 보시기 바랍니다.

37가지 Python 웹 개발 프레임워크 요약

18. Sanic Framework

공식 웹사이트: https://www.php.cn/link/3b036b877a6a074d7dbfc706fe868 c1d

장점: Sanic은 작성 속도가 빠른 Python 3.7+ 웹 서버 및 웹 프레임워크입니다. Python 3.5에 추가된 async/await 구문을 사용하면 코드가 차단되지 않고 빨라집니다. 이 프로젝트의 목표는 쉽게 구축하고 확장하며 궁극적으로 확장할 수 있는 고성능 HTTP 서버를 시작하고 실행할 수 있는 간단한 방법을 제공하는 것입니다.

단점: Sanic은 개발자가 더 큰 애플리케이션 내에서 코드를 분할하고 구성할 수 있는 작은 하위 애플리케이션인 Blueprints의 개념을 공유하는 등 기능 측면에서 Flask를 모방합니다. Sanic은 데이터 추가, 삭제, 수정 및 쿼리만 수행하는 CRUD 애플리케이션에는 적합하지 않습니다.

37가지 Python 웹 개발 프레임워크 요약

19. Starlette Framework

공식 웹사이트: https://www.php.cn/link/818cdcf067c824a4e34f9293de3b15a 9

장점: 스타렛 생산 준비가 되어 있고 다음을 제공하는 고성능 비동기 서비스를 구축하는 데 이상적인 경량 ASGI 프레임워크/툴킷입니다. 인상적인 성능. WwbSocket 지원. GraphQL 지원. 진행 중인 백그라운드 작업. 이벤트를 시작하고 종료합니다. 요청을 기반으로 구축된 테스트 클라이언트입니다. CORS, GZip, 정적 파일, 스트리밍 응답. 세션 및 쿠키 지원. 100% 테스트 범위. 100% 유형 주석이 달린 코드 베이스. 하드 종속성이 없습니다.

단점: Starlette는 모든 기본 웹 마이크로프레임워크 기능을 제공합니다. 그러나 자동 데이터 유효성 검사, 직렬화 또는 API 문서는 제공하지 않습니다.

37가지 Python 웹 개발 프레임워크 요약

20. Fastapi 프레임워크

공식 웹사이트: https://www.php.cn/link/647a8664e3a3d945c87db2d07a6590c1

장점: FastAPI는 현대적입니다. , 표준 Python 유형 힌트를 기반으로 Python 3.6+를 사용하여 API를 구축하기 위한 빠른(고성능) 웹 프레임워크입니다. NodeJS 및 Go와 동등한 매우 높은 성능입니다(Starlette 및 Pydantic에게 감사드립니다). 사용 가능한 가장 빠른 Python 프레임워크 중 하나입니다. 사람(개발자)이 유발한 오류를 약 40% 줄입니다. 짧고 단순하며 직관적이고 강력합니다.

단점: 자체에는 템플릿 구문이 제공되지 않으므로 설치해야 합니다.

37가지 Python 웹 개발 프레임워크 요약

21. 응답자 프레임워크

공식 웹사이트: https://www.php.cn/link/212ab20dbdf4191cbcdcf015511783f4

장점: is kennethreitz 새로 개발된 프로젝트는 Python 기반의 HTTP 서비스 프레임워크입니다. 하단 계층은 Starlette 프레임워크를 사용합니다. Starlette는 고성능 비동기 IO 서비스를 구축하는 데 사용할 수 있는 경량 ASGI 프레임워크입니다. Starlette에 비해 Responder는 개발자 친화적입니다. kennethreitz는 이를 보다 명확하게 하기 위해 "HTTP for Humans"라는 요청을 작성했습니다. 실제로 비교해 보면 Responder는 Starlette보다 훨씬 더 우아합니다.

단점: 새로운 프로젝트일 수도 있고 포장이 아직 완벽하지 않습니다. 현재 버전에서는 아직 일부 코드가 제대로 작동하지 않습니다. 하지만 인터페이스 형태는 이미 정의되어 있으며 이후 버전에서는 추가될 것으로 예상됩니다.

22.Molten Framework

공식 웹사이트: https://www.php.cn/link/b87039703fe79778e9f140b78621d7fb

장점: 용융이 최소화되어, Python으로 HTTP API를 구축하기 위한 확장 가능하고 빠르며 효율적인 프레임워크입니다. 계획은 자동으로 요청의 유효성을 검사하고 코드를 유지 관리하기가 더 쉽습니다. 인스턴스는 자동으로 직렬화 가능하고 API가 실제로 필요로 하는 종류의 기능을 포함하며 PEP484 유형 힌트와 mypy를 광범위하게 사용합니다.

단점: 데이터 검증, 직렬화 및 문서화를 제공하기 위해 Pydantic과 같은 타사 라이브러리를 사용하지 않으며 자체 라이브러리가 있습니다. 따라서 이러한 데이터 유형 정의는 재사용하기가 어렵습니다. 종속성 주입 시스템에는 종속성의 사전 등록이 필요하며 선언된 유형을 기반으로 종속성을 해결합니다. 따라서 특정 유형을 제공하기 위해 여러 구성 요소를 선언하는 것은 불가능합니다.

37가지 Python 웹 개발 프레임워크 요약

23.Clastic 프레임워크

공식 웹사이트: https://www.php.cn/link/9fa04f87c9138de23e92582b4ce549ec

장점: 하나 function 전역 상태를 제거하면서 명시적인 개발 방식을 단순화하는 강력한 Python 웹 프레임워크입니다. Clastic은 전적으로 Python으로 작성되었으며 향상된 재사용성 및 테스트 가능성, 사전 예방적인 URL 라우팅 확인, 애플리케이션 초기화에 대한 향상된 제어, 향상된 미들웨어 패러다임, 전역 상태 없음, ORM 사용, 보다 쉬운 WSGI 통합을 제공합니다.

단점: Clastic은 전역 상태를 구축하지 않습니다. URL 라우팅 규칙 매개변수와 보기 함수 서명이 일치하지 않습니다. Clastic에서는 이 불일치로 인해 애플리케이션을 구축할 때 예외가 발생합니다.

24.Aiohttp 프레임워크

공식 웹사이트: https://www.php.cn/link/6f8805c87ad80ed936bcd5ce4bebe65d

장점: asyncio 및 Python용 비동기 HTTP 클라이언트/서버. 클라이언트 및 HTTP 서버를 지원하고 서버 WebSocket 및 클라이언트 WebSocket을 즉시 지원하며 콜백 지옥이 없습니다. 웹 서버에는 미들웨어, 신호 및 플러그형 라우팅이 있습니다.

단점: RFC 7231에 따르면 aiohttp 버전 2.0에서는 이전 버전을 사용하여 add_get()으로 추가된 요청이 HEAD 메서드를 사용하여 액세스하면 405를 반환하도록 조정했습니다. 프로세서가 응답 본문 내용을 많이 작성하는 경우 HEAD 메서드를 실행할 때 응답 본문 내용 처리를 건너뛰어 실행 효율성을 높일 수 있습니다.

37가지 Python 웹 개발 프레임워크 요약

25. Masonite 프레임워크

공식 웹사이트: https://www.php.cn/link/81baadacf39a11c56ee30acd5455fced

장점: 현대적이고 개발자 중심의 Python 웹 프레임워크는 실제 배터리를 구현하는 데 전념하고 있으며 다양한 기본 기능을 갖춘 개발자 도구를 포함하고 있으며 확장성이 매우 뛰어난 아키텍처를 갖추고 있습니다. Masonite는 처음으로 웹 애플리케이션을 시작하는 초보 개발자뿐만 아니라 애플리케이션을 완성하기 위해 Masonite의 모든 잠재력을 활용해야 하는 숙련된 개발자에게도 적합합니다. Masonite는 설치부터 배포까지 빠르고 쉽게 하기 위해 노력하므로 개발자는 컨셉부터 제작까지 최대한 빠르고 효율적으로 진행할 수 있습니다. 다음 SaaS에 사용하세요! 한 번 시도해 보시면 사랑에 빠지게 될 것입니다.

단점: Masonite의 가장 큰 "경쟁자"는 Django입니다. 왜냐하면 커뮤니티는 프레임워크를 사용하기 쉽고 즐겁게 사용할 수 있는 차세대 제품으로 만들기 위해 최선을 다하고 있기 때문입니다. Django에 비하면 Masonite는 아직 초기 단계이므로 앞으로의 활약을 기대해 주세요.

37가지 Python 웹 개발 프레임워크 요약

26.Quart Framework

공식 웹사이트: https://www.php.cn/link/f7426bc1998891cd172a10233b83a8de

장점: 쿼트 예 Python 네트워킹 마이크로프레임워크입니다. Quart를 사용하면 HTML 템플릿을 렌더링 및 제공하고, JSON API를 작성(RESTful)하고, WebSocket을 제공하고, 요청 및 응답 데이터를 스트리밍하고, HTTP 또는 WebSocket 프로토콜을 통해 거의 모든 작업을 수행할 수 있습니다.

단점: Python 3.7+만 지원합니다. Tonberry 프레임워크

37가지 Python 웹 개발 프레임워크 요약

장점:

클래스 기반 라우팅 접근 방식을 사용하는 ASGI 호환 웹 마이크로프레임워크. CherryPy의 영향을 받았지만 asyncio와 호환됩니다. 현재 진행 중인 이 프로젝트에서 Qactuar라는 동반 ASGI 서버가 등장했습니다.

단점: 풀 요청을 사용할 때 자동 포맷터 iSort 및 Black을 사용하고 MyPy를 사용하여 코드를 확인하세요. 이는 일부 유형 오류를 제거하지 않고 MyPy를 항상 완벽하게 만족시킬 수는 없지만 최소한 최선을 다하고 `# type:ignore` 주석을 아껴 사용하십시오. 마지막으로, 가능한 가장 정확한 유형 힌트를 제공하도록 노력하세요.

37가지 Python 웹 개발 프레임워크 요약

28.cyclone Framework

공식 웹사이트: https://www.php.cn/link/ed582716bfb4738ccd924053011 22 e66

장점: Cyclone Tornado API를 Twisted 프로토콜로 구현한 Python 웹 서버 프레임워크입니다. Twisted는 이벤트 기반 Python 네트워크 프로그래밍 프레임워크입니다. 이는 대중이 사용할 수 있는 가장 성숙한 비차단 I/O 라이브러리 중 하나입니다. Tornado는 웹 애플리케이션 구축을 위한 매우 훌륭한 API를 갖춘 가장 인기 있고 빠른 Python 웹 서버 중 하나인 FriendFeed 웹 서버의 오픈 소스 버전입니다. 풍부한 기능 세트 외에도 Cyclone은 C10K 문제도 해결합니다.

단점: Cyclone은 더 이상 Python 2.x를 지원하지 않습니다.

29.Klein Framework

공식 웹사이트: https://www.php.cn/link/fd9e2ae32b53addc06c63208be3aaa43

이점: Klein은 마이크로 -framework - Python을 사용하여 프로덕션에 즉시 사용 가능한 웹 서비스를 개발하기 위한 것입니다. Bottle 및 Flask와 유사한 매우 작은 API를 가지고 있다는 점에서 "마이크로"입니다. 표준 라이브러리 외부에 의존하기 때문에 "마이크로"가 아닙니다. 이는 주로 Werkzeug 및 Twisted와 같이 널리 사용되고 잘 테스트된 구성 요소를 기반으로 구축되었기 때문입니다.

단점: 조금 구식일 수도 있습니다.

37가지 Python 웹 개발 프레임워크 요약

30.nameko Framework

공식 웹사이트: https://www.php.cn/link/5c341d10c5596a0fd920fda9f33bcb06

장점: AMQP RPC 및 이벤트(게시-구독), HTTPGET, POST 및 웹소켓, 쉽고 빠른 개발을 위한 CLI, 단위 및 통합 테스트를 위한 유틸리티.

단점: nameko 마이크로서비스는 오류가 발생할 때 오류 로그를 자동으로 인쇄하지 않으며 모니터링 관련 종속성을 추가해야 합니다. 컴퓨팅 집약적인 작업으로 인해 작업이 재시도됩니다. 37가지 Python 웹 개발 프레임워크 요약

31.CubicWeb Framework

공식 웹사이트: https://www.php.cn/link/ff84a9f3c0d335d25413dd8dfc9b2e8f

장점: CubicWeb은 의미론적입니다. LGPL에 따라 라이선스가 부여된 웹 응용 프로그램 프레임워크를 사용하면 개발자는 구성 요소(큐브라고 함)를 재사용하고 잘 알려진 개체 지향 설계 원칙에 따라 웹 응용 프로그램을 효율적으로 구축할 수 있습니다. 일반적인 요구 사항, Python 프로그래밍 언어의 성능과 유연성, SQL 데이터베이스의 안정성, LDAP 디렉터리, 스토리지 백엔드용 Subversion 및 Mercurial을 위한 재사용 가능한 구성 요소(데이터 모델 및 보기) 라이브러리입니다.

단점: CubicWeb 애플리케이션에서 영구 데이터를 얻거나 조작하려면 RQL(Relational Query Language)을 사용할 수 있습니다. RQL(Relational Query Language)은 다양한 데이터 소스를 서로 연관시키기 위해 고도로 분리된 경로를 제공합니다. 그러나 쿼리를 문자열로 수동으로 작성하면 구현되므로 ORM에 익숙한 개발자에게는 구식으로 느껴질 수 있습니다. CubicWeb을 사용하는 데에는 다른 장애물이 있습니다. 첫째, 설정이 번거로울 수 있습니다. 또 다른 잠재적인 문제는 기본 템플릿 엔진이 없다는 것입니다. HTML 생성은 개발자에게 맡겨집니다. CubicWeb은 Python 3을 지원하지만 Twisted와 같은 모듈 자체는 완전히 이식되지 않았습니다.

37가지 Python 웹 개발 프레임워크 요약

32.Zope2 프레임워크

공식 웹사이트: https://www.php.cn/link/6dcb94fb55921f2416219b454651bffc

장점: Zope 2 예 Python 기반 웹 애플리케이션 프레임워크는 모든 Python 웹 애플리케이션 및 도구의 근원이자 Python 제품군의 강력한 분기입니다. Zope 2의 "객체 게시" 시스템은 객체 지향 개발 방법에 이상적이며 개발자의 학습 곡선을 줄이고 애플리케이션에서 몇 가지 잘못된 기능을 발견하는 데 도움을 줄 수 있습니다.

단점: Zope는 설치에 약간의 작업이 필요하기 때문에 간단한 RESTful API(병 또는 플라스크별) 또는 대화형 기본 웹사이트(장고와 같은)에는 적합하지 않습니다. 단순히 소스를 프로젝트 하위 폴더에 압축을 푸는 문제가 아닙니다.

33.Web2py 프레임워크

공식 웹사이트: https://www.php.cn/link/60bb8062ea8e0c7ff17bb2e484cd223a

장점: Web2py는 Python 언어로 작성되었습니다. LGPLv3 오픈 소스 계약에 따라 빠르고 확장 가능하며 안전하고 이식 가능한 데이터베이스 기반 애플리케이션을 사용하여 웹 애플리케이션을 민첩하고 빠르게 개발하도록 설계된 무료 오픈 소스 웹 프레임워크입니다. Web2py는 웹 버전의 온라인 개발, HTML 템플릿 작성, 정적 파일 업로드, 데이터베이스 작성 등 전체 개발 프로세스를 브라우저에서 수행할 수 있는 원스톱 솔루션을 제공합니다. 기타 기능에는 로깅 기능과 자동화된 관리 인터페이스가 포함됩니다.

단점: Web2py의 중요한 제한 중 하나는 Python 2.x와만 호환된다는 것입니다. 첫째, 이는 Web2py가 Python 3의 비동기 구문을 사용할 수 없음을 의미합니다. Python 3에 고유한 외부 라이브러리에 의존한다면 운이 좋지 않습니다. 그러나 Web2py Python 3을 호환 가능하게 만드는 작업이 진행 중이며 이 글을 쓰는 시점에서 거의 완료되었습니다.

37가지 Python 웹 개발 프레임워크 요약

34.Pylons Framework

공식 웹사이트: https://www.php.cn/link/ddc96fb7d590861ce4bbc4579f5fa848

장점: 파일론 Python으로 작성된 오픈 소스 웹 애플리케이션 프레임워크입니다. 이는 WSGI 표준을 확장하고 재사용성을 향상시키며 기능을 독립 모듈로 분리합니다. Pylons는 Django 및 TurboGears와 유사한 최신 웹 애플리케이션 프레임워크의 전형입니다. Pylons는 Ruby on Rails의 영향을 많이 받았습니다. 두 가지 구성 요소인 Routes와 WebHelpers는 Rails 기능을 Python으로 구현한 것입니다.

Cons: Pylons는 repoze.bfg와 병합되었으며 현재 유지 관리 전용 모드입니다. 새로운 프로젝트는 새로 병합된 웹 프레임워크 피라미드로 시작하는 것이 좋습니다. 37가지 Python 웹 개발 프레임워크 요약

35. 큐브 프레임워크

공식 웹사이트: https://www.php.cn/link/9fb2c3bda2393ae337242f405c93a010

장점: Cubes는 보고서 및 분석 애플리케이션, 온라인 분석 처리(OLAP), 다차원 분석 및 집계된 데이터 찾아보기. Data Brewery의 일부입니다.

단점: 더 이상 큐브당 암시적 집계 Record_count를 제공하지 않습니다. 집계로 명확하게 정의되어야 합니다. 기존 백엔드 아키텍처에는 제한이 있습니다. 저장소 사용만 허용하며 서버가 시작되기 전에 모델을 알아야 하며 원격 소스에서 모델을 얻을 수 없습니다.

36.Dpark 프레임워크

공식 웹사이트: https://www.php.cn/link/e7a561a2f218bf9cc0e697598320ec59

장점: DPark는 다음을 위한 Python입니다. Spark 클론 버전은 Python으로 구현된 분산 컴퓨팅 프레임워크로, 대규모 데이터 처리와 짧은 지연 시간의 반복 계산을 쉽게 구현할 수 있습니다. 이 컴퓨팅 프레임워크는 MapReduce와 유사하지만 더 유연하고 Python을 사용하여 분산 컴퓨팅을 쉽게 수행할 수 있으며 더 나은 반복 컴퓨팅을 위해 더 많은 기능을 제공합니다. DPark는 국내 Douban Company에서 개발, 구현 및 유지 관리하고 있습니다. Douban Company의 설명에 따르면 Douban Company 내 대부분의 데이터 분석은 현재 DPark를 사용하여 완료되었으며 전체 프로젝트도 완벽해지고 있습니다.

단점: Dpark에서는 프로세스를 사용합니다. Python에서는 GIL(Global Interpreter Lock)이 있기 때문에 멀티 코어 시스템에서 여러 스레드를 사용하더라도 실제로 구현할 방법이 없습니다. 이 스레드.

37. Buildbot 프레임워크

공식 웹사이트: https://www.php.cn/link/9b1fc5df81cadf52164c02bf92678f95

장점: Buildbot은 다음에서 구현됩니다. python Python, Mozilla, Chromium, WebKit 등과 같은 잘 알려진 프로젝트에서 사용되는 오픈 소스 지속적인 빌드 및 지속적인 제공 도구입니다. Buildbot은 Python 패키지를 직접 사용할 수 있고 수만 개의 라이브러리를 쉽게 소유할 수 있으며 강력한 확장 기능을 갖추고 있습니다. Jenkins가 이미 귀하의 요구 사항을 쉽게 충족한다고 생각한다면 Buildbot이 필요하지 않습니다. Jenkins에서 비효율적이고 확장하기 어렵다고 느끼고, Python과 같은 스크립트로 수행할 수 있는 일부 작업을 Jenkins에서 구현하기 어렵다면 Buildbot을 살펴보세요.

단점: buildbot은 여러 프로젝트를 잘 지원하지 않습니다.

37가지 Python 웹 개발 프레임워크 요약

위 내용은 37가지 Python 웹 개발 프레임워크 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제