2017년 1월 19일 목요일

Flask vs. CherryPy — Ionrock Dot Org

Flask vs. CherryPy — Ionrock Dot Org:

Flask vs CherryPy 에 대해서 비교한 글인데, 구글번역기를 돌려봤다. 생각보다, 자연스럽다. 저자는 CherryPy 팬이다. 난 장고. 지금 서비스를 Microservice 로 만들어보려고 하는데 있어서 과연 어떻게 아키텍쳐를 만들어야 하는가 하는 고민에 쌓였다. 그래서 이글 저글 찾아보고 있다.



나는 항상 CherryPy의 팬이었습니다. 시간이 지남에 따라 중요한 결정을 내리는 것을 피하는 것으로 보이며, 가장 중요한 부분에서 올바른 결정을 내리는 데 도움이됩니다. CherryPy는 간단하고, 실용적이고, 안정적이며, 다른 프로세스와 잘 어울립니다. CherryPy가 제공하는 것에 감사 드리며, 불행하게도 더 큰 파이썬 공동체에는 많은 생각이 들지 않습니다. CherryPy가 엉뚱한 프레임 워크를 보지 못한 이유는 CherryPy의 대부분 사용자가 거친 모서리에서 행복하게 작업하고 선택의 여지가있는 프레임 워크를 만들기보다는 작업을 완료했기 때문입니다. 비참한.

많은 마이크로 프레임 워크가 있지만, Flask가 가장 인기있는 것 같습니다. 나는 어떤 종류의 과학적 정확성, 단지 직감으로도 이것을 말하지 않습니다. 그래서 다른 종류의 프로세스 관리자를 작성하려고 할 때 다른 마이크로 프레임 워크의 작동 방식을 확인하는 것이 좋은 시점 인 것 같습니다.

플라스크에 관해 제가 말할 수있는 가장 좋은 것은 프로젝트 공동체입니다. Django 프로젝트를 수행 한 후, 관리자 인터페이스와 80 %를 얻는 것이 얼마나 쉬운 지 고맙습니다. 플라스크는 놀랍게도 "플라스크 + 무언가"에 대한 Google 검색을 통해 원하는 것을 구현할 수있는 몇 가지 옵션을 신속하게 제공한다는 점에서 유사합니다. 또한 Flask는 일반적으로 너무 구체적이지 않으므로 플러그인 (Blueprints ...라고도 함)은 기본 도구에 필요한대로 사용자 정의 할 수있는 기회를 제공하는 것 같습니다. Flask-Admin은 Flask-SQLAlchemy 측면에서 매우 유용합니다.

불행히도 훌륭한 커뮤니티 패키지가 풍부하지만 Flask는 실제 개발과 관련하여 짧습니다. 파견 측면에서 조직이 결여되어 있기 때문에 조직화 된 코드는 매우 위험합니다. 어떤 코드가 호출되는지 설정하기 위해 가져 오기를 사용하기 때문에 순환 종속성을 만드는 것이 쉽습니다. 본질적으로 Flask는 일반적으로 의미있는 일부 모델을 처방하기보다는 특정 애플리케이션 패턴을 구축하도록합니다.

방향의 결여로 인해 코드 구성이 명확하지는 않지만 응용 프로그램을 쉽게 연결할 수 있습니다. 내가 말할 수있는 청사진 모델은 사이트 내에서 애플리케이션을 구성하는 것이 합리적으로 쉽습니다.

Flask의 또 다른 어려움은 구성입니다. 가져 오기 메커니즘을 사용하여 앱을 구성하므로 가져 오기시 구성을 반쯤 사용할 수 있어야합니다. 이렇게하면 웹 서버를 시작하는 앱을 만들 때 (웹 서비스를 실행하는 앱과 반대) 상황이 약간 어려워집니다. myapp -config를 만드는 것은 어렵습니다. 앱을 시작했을 때 이미 애플리케이션을 가져 와서 일부 설정을했기 때문입니다. 커다란 문제는 아니지만, 그럴 수 있습니다.

이 모델은 CherryPy가 탁월한 곳입니다. 이를 통해 서버 역할을하는 독립 실행 형 프로세스를 만들 수 있습니다. 프로세스 및 요청 수준 기능을 켜고 끌 수있는 강력한 구성 메커니즘을 제공합니다. 또한 URL 당 구성을 허용합니다. 그 결과, 데몬이나 하나의 응용 프로그램을 명령으로 실행하고자한다면, CherryPy가 이것을 매우 쉽고 명확하게 만듭니다.

CherryPy는 프레임 워크에서 좀 더 체계적인 체재를 유지하도록 도와줍니다. 다양한 기능을 지원하고 코드 구성에 대한 좀 더 분명한 패턴을 제공하는 유용한 디스패처 패턴을 제공합니다. 그것은 만병 통치약이 아닙니다. 익숙해 진 패턴이 있습니다. 그러나 일단 이러한 패턴을 이해하면 코드 작성을위한 강력한 모델이됩니다.

Fortus를 프레임 워크로 사용하고 CherryPy를 프로세스 러너 / 서버로 사용하려면 더 쉬울 수 없습니다. CherryPy로 Flask 앱을 ​​실행하는 것이 쉬운 일이며, 몇 가지면에서 두 가지 장점을 모두 누릴 수 있습니다.

CherryPy가 더 많은 관심을 갖기를 바란다면 플라스크가 마이크로 프레임 워크 전쟁에서 "승리"했음을 직시 할 수 있습니다. 그 말로는 플라스크에 적용 할 수있는 CherryPy에서 배울 가치있는 교훈이 있다고 생각합니다. 개인적으로 프로세스 버스 모델을 사용할 수있게하고 프로덕션 웹 서버를 포함하는 것을보고 싶습니다. 그때까지는 CherryPy를 서버로 사용하고 Flask 커뮤니티가 제공하는 기능을 계속해서 즐겁게 사용할 수있어서 기쁩니다.









댓글 없음:

댓글 쓰기