Python (Twisted) czy Node.js

0

Właściwie mogłem ten wątek napisać też w dziale JavaScript, ale wybór padł na dział Python.

Swego czasu musiałem napisać aplikację - serwer TCP/IP. Jego zadaniem było odbieranie danych binarnych, przetwarzanie ich i zapis w bazie danych. Ponieważ kluczowa była tutaj wydajność, wybór padł na framework Twisted, który umożliwia asynchroniczność. Działa ok, jest fajnie, ale zastanawiam się teraz czy dalej brnąć w Pythona czy póki aplikacja jest jeszcze mała - przepisać ją na node.js.

W Pythonie doskwiera mi brak bibliotek, które byłyby napisane asynchronicznie i współpracowały z Twisted. Przykładowo: ORM. Niby znalazłem jakiś ORM dla Twisted, ale dość prosty i biblioteka nie wydaje się być dalej rozwijana. Node.js natomiast z natury jest asynchroniczny. Powstaje w nim mnóstwo kodu i teraz żałuje, że nie zdecydowałem się na początku na napisanie tej aplikacji na node.js. Dodatkowo pip vs npm... eh... ale to już temat na inną dyskusję :)

Ciekaw też jestem, jak przedstawiałyby się benchmarki porównujące wydajność aplikacji Node.js oraz Python z użyciem Twisted.

Przechodząc do sedna: jakie jest Wasze zdanie w tym temacie? Node.js czy Python + Twisted? Czy ktoś z Was miał w ogóle styczność z Twisted? Niestety sama jego dokumentacja już nieco odstrasza i przypomina lata '90.

0

A nie lepiej nowy Python (3.6) z asyncio + to https://github.com/05bit/peewee-async ?
Twisted widziałem i "macałem" ale tak jak napisałeś

  1. Dokumentacja jest mocno "taka sobie"
  2. Mogłem używać nowego węża, tam już miałem asycnio w bibliotece standardowej.

Porównania z node.js nie mam.

0

Nie pisałem jeszcze w Python 3, ale to wygląda obiecująco :) Przyjrzę się temu. Na pewno łatwiej byłoby zrobić migrację Python 2 => Python 3, niż przepisywać cały kod do Javascript :P

Dzięki za linka!

1 użytkowników online, w tym zalogowanych: 0, gości: 1