„ Django to wysokopoziomowy framework Python Web, który zachęca do szybkiego rozwoju i czystego, pragmatycznego projektowania” . Jeśli budujesz coś podobnego do witryny e-commerce, prawdopodobnie powinieneś skorzystać z Django. Dzięki temu Twoja praca zostanie wykonana szybko. Nie musisz się martwić o zbyt wiele wyborów technologicznych. Zapewnia wszystko, czego potrzebujesz, od silnika szablonów po ORM. Zostanie lekko poparta opiniami na temat struktury aplikacji, co jest dobre, jeśli mnie zapytasz. I ma najsilniejszą społeczność ze wszystkich innych bibliotek, co oznacza, że dostępna jest łatwa pomoc.
„ Flask to mikrocząsteczka dla Pythona oparta na Werkzeug, Jinja 2 i dobrych intencjach” . Uwaga - „mikrozarządzanie” może wprowadzać w błąd. Nie oznacza to, że Flask jest biblioteką na wpół upieczoną. Oznacza to, że rdzeń kolby jest bardzo, bardzo prosty. W przeciwieństwie do Django, nie będzie podejmować żadnych decyzji dotyczących technologii. Masz swobodę wyboru dowolnego silnika szablonów lub ORM, który Ci się podoba. Mimo że domyślnie jest wyposażony w silnik szablonów Jinja, zawsze możesz wybrać własny. O ile wiem Flask jest przydatny do pisania punktów końcowych API (usługi RESTful).
„ Twisted to oparty na zdarzeniach silnik sieciowy napisany w języku python” . To silnik o wysokiej wydajności. Głównym powodem jego szybkości jest coś, co nazywa się odroczonym. Twisted jest zbudowany na odroczeniach. Dla tych z was, którzy nie wiedzą o odroczeniach, jest to mechanizm osiągnięty dzięki architekturze asynchronicznej. Twisted jest bardzo szybki. Ale nie nadaje się do pisania konwencjonalnych aplikacji internetowych. Jeśli chcesz zrobić coś w sieci na niskim poziomie, twisted jest twoim przyjacielem.
„ Tornado to framework sieciowy Python i biblioteka sieci asynchronicznych, pierwotnie opracowane w FriendFeed. Dzięki zastosowaniu nieblokujących sieciowych we / wy, Tornado może skalować się do dziesiątek tysięcy otwartych połączeń, dzięki czemu idealnie nadaje się do długiego odpytywania, WebSockets i innych aplikacji które wymagają długotrwałego połączenia z każdym użytkownikiem " . Tornado stoi pomiędzy Django i Flask. Jeśli chcesz napisać coś z Django lub Flask, ale jeśli potrzebujesz lepszej wydajności, możesz wybrać Tornado. potrafi dobrze poradzić sobie z problemem C10k, jeśli jest odpowiednio zaprojektowany.
„ Cyclone to framework serwera WWW dla Pythona, który implementuje interfejs API Tornado jako protokół Twisted” . Co jeśli chcesz czegoś, co jest prawie tak wydajne jak Twisted, ale łatwe do pisania konwencjonalne aplikacje internetowe? Przywitaj się z cyklonem. Wolałbym Cyklon niż Tornado. Ma API, które jest bardzo podobne do Tornado. W rzeczywistości jest to widelec Tornado. Problem w tym, że ma relatywnie małą społeczność. Alexandre Fiori jest jedynym głównym inicjatorem repozytorium.
„ Pyramid to ogólna platforma programistyczna do tworzenia aplikacji internetowych w języku open source. Jego głównym celem jest ułatwienie programistom Python tworzenia aplikacji internetowych”. Tak naprawdę nie korzystałem z Pyramid, ale przejrzałem dokumentację. Z tego, co rozumiem, Pyramid jest bardzo podobny do Flask i myślę, że możesz używać Pyramid wszędzie tam, gdzie Flask wydaje się odpowiedni i odwrotnie.
EDYCJA : Przyjmujemy prośbę o przejrzenie innych ram!
Źródło: http://dhilipsiva.com/2013/05/19/python-libraries-django-twisted-tornado-flask-cyclone-and-pyramid.html