Будет ли python обеспечивать достаточную производительность для прокси? - PullRequest
2 голосов
/ 06 марта 2009

Я хочу начать писать http-прокси, который будет изменять ответы в соответствии с некоторыми правилами / фильтрами, которые я настрою. Однако, прежде чем я начну его кодировать, я хочу убедиться, что я делаю правильный выбор при работе с Python. Позже, этот инструмент должен был бы быть в состоянии обрабатывать много запросов, поэтому я хотел бы знать, что я могу рассчитывать на то, что позже он сможет работать, когда «push to to shove».

Ответы [ 4 ]

4 голосов
/ 06 марта 2009

До тех пор, пока основная часть обработки использует встроенные модули Python, все будет в порядке с точки зрения производительности. Самым большим преимуществом Python является его четкий синтаксис и простота тестирования / обслуживания. Если вы обнаружите, что один раздел вашего кода замедляет процесс, вы можете переписать этот раздел и использовать его в качестве модуля C, сохраняя при этом основную часть вашего управляющего кода на Python.

Однако, если вы хотите сделать наиболее оптимизированный код Python, вы можете проверить этот пост .

2 голосов
/ 06 марта 2009

Python хорошо справляется с большинством задач, но вам придется изменить способ программирования, если вы привыкли к другим языкам. См. Python не Java для получения дополнительной информации.

Если обычный старый CPython не дает нужной вам производительности, у вас есть и другие варианты.
Как уже упоминалось, вы можете расширить его на C (используя такой инструмент, как swig или Pyrex ). Я также слышал хорошие новости о PyPy , но имейте в виду, что он использует ограниченное подмножество Python. И наконец, многие люди используют psyco для повышения производительности.

2 голосов
/ 06 марта 2009

Да, я думаю, вы найдете Python идеально подходящим для ваших нужд. Существует огромное количество веб-фреймворков, библиотек WSGI и т. Д. На выбор или для обучения при создании собственных.

В блоге Python History есть интересная запись о том, как Python поддерживал высокопроизводительные веб-сайты в 1996 году.

2 голосов
/ 06 марта 2009

Это будет зависеть от используемой вами библиотеки больше, чем от самого языка. Известно, что витая платформа хорошо масштабируется.

Вот пример прокси-сервера в python / twisted , с которого можно начать.

Итог: мудро выбирайте сторонние инструменты, и я уверен, что у вас все будет хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...