2 Stimmen

Wird Python genug Leistung für einen Proxy bieten?

Ich möchte einen http-Proxy schreiben, der die Antworten nach einigen Regeln/Filtern, die ich konfigurieren werde, ändert. Bevor ich jedoch mit der Programmierung beginne, möchte ich sicherstellen, dass ich mit Python die richtige Wahl treffe. Später soll dieses Tool in der Lage sein, eine Vielzahl von Anfragen zu verarbeiten. Ich möchte also wissen, dass ich mich darauf verlassen kann, dass es auch dann funktioniert, wenn es darauf ankommt.

4voto

Jon W Punkte 14908

Solange der Großteil der Verarbeitung die in Python eingebauten Module verwendet, sollte die Leistung in Ordnung sein. Die größte Stärke von Python ist die klare Syntax und die einfache Testbarkeit/Wartbarkeit. Wenn Sie feststellen, dass ein Abschnitt Ihres Codes den Prozess verlangsamt, können Sie diesen Abschnitt umschreiben und als C-Modul verwenden, während Sie den Großteil Ihres Steuercodes in Python belassen.

Wenn Sie jedoch auf der Suche nach optimiertem Python-Code sind, sollten Sie sich folgendes ansehen dieser SO-Posten .

2voto

Kenan Banks Punkte 196831

Dies hängt mehr von der Bibliothek ab, die Sie verwenden, als von der Sprache selbst. Die verdrillt Rahmen ist bekanntermaßen gut skalierbar.

Hier ist ein proxy server beispiel in python/twisted um Ihnen den Einstieg zu erleichtern.

Fazit: Wählen Sie Ihre Tools von Drittanbietern mit Bedacht aus, und ich bin sicher, dass Sie keine Probleme haben werden.

2voto

zweiterlinde Punkte 13917

Ja, ich denke, Sie werden feststellen, dass Python für Ihre Bedürfnisse vollkommen ausreichend ist. Es gibt eine riesige Anzahl von Web-Frameworks, WSGI-Bibliotheken usw., aus denen Sie wählen können, oder von denen Sie lernen können, wenn Sie Ihre eigenen entwickeln.

Es gibt eine interessante Beitrag über die Blog zur Python-Geschichte darüber, wie Python 1996 leistungsstarke Websites unterstützte.

2voto

Jason Baker Punkte 180981

Python eignet sich sehr gut für die meisten Aufgaben, aber Sie müssen Ihre Art zu programmieren ändern, wenn Sie andere Sprachen gewohnt sind. Siehe Python ist nicht Java für weitere Informationen.

Wenn das gute alte CPython nicht die gewünschte Leistung bringt, gibt es auch andere Möglichkeiten.
Wie bereits erwähnt, können Sie es in C erweitern (mit einem Tool wie Schluck o Pyrex ). Ich habe auch viel Gutes über PyPy aber bedenken Sie, dass es eine eingeschränkte Untermenge von Python verwendet. Und schließlich verwenden viele Leute psyco um die Leistung zu beschleunigen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X