Как стать автором
Обновить
60
0
Vladimir Kozlovsky @vladkozlovski

Inventor. Rebel. Entrepreneur.

Отправить сообщение
Python мне ближе идеологически. Честно говоря, я сейчас сожалею, что не провел тогда более подробное тестирование с EventMachine, с раздачей файлов. И мне было бы интересно сравнить его с asyncio в Python 3.4, что я как-нибудь обязательно сделаю.
Большое спасибо за ваш тест. Теперь я понял, что вы имели ввиду. Ниже habrahabr.ru/post/228455/#comment_7741325 я ответил почему использовал разные версии Python во время тестирования.
Я очень не хотел писать на Python 2 и это было почти невероятным событием для меня. Но я думал так — если я найду какое-то решение, которое будет уходить в отрыв и будет поддерживать только Python 2, то это станет поводом копать в сторону этого решения.

Так стало как раз с Gevent, который официально не поддерживает 3-ий Python, но есть форк, который поддерживает. Я бы, честно говоря, и использовал сейчас именно этот форк, если бы не реализация asyncio в python 3.4. Вы можете сказать, что я должен был сравнить производительность этого форка Gevent с тем же Tornado на 3-их версиях и я с вами соглашусь.Трудность здесь, как я написал в статье, с выделенным количеством времени на мое исследование. Для меня это мог стать бесконечный процесс, который закончился бы каким-нибудь Erlang'ом.

Если бы я тогда последовал принципу проверить все на Python 2, что бы сравнение между фреймворками было более честным, и выиграл бы Tornado или любой другой фреймворк, который поддерживает Python 3, то я бы безусловно захотел использовать именно 3-юю версию с ним, а тогда мне пришлось бы все равно запускать тесты еще и на 3-ей версии Python.
Я использовал каждый фреймворк с последний версией Python, которую он поддерживает. Я бы не стал использовать 2-ую версию Python в новом проекте даже в случае более высокой производительности. Другими словами, я не вижу смысла использовать Tornado со 2-ой версией Python в то время, когда он поддерживает 3-юю. С версией ruby вы правы, я проглядел, виной тому стабильный дистрибутив Debian, я думаю.
Тут важен процессор, по памяти расход везде небольшой. Я бы с радостью везде использовал 3-ий Python, но поддержки нет, это конечно печально.
Да, к сожалению, тесты проводил несколько месяцев назад, сравнить с Erlang мне было бы очень интересно. В любом случае, спасибо за предложение.
Только что добавил в конец статьи, в раздел «фреймворки».
Спасибо за замечание. EventMachine я в тесты добавил просто для сравнения, как и node.js. Я с самого начала не планировал их использовать в своем проекте. Производительность у него действительно отличная. У меня было желание проверить его с раздачей файлов, но время на исследование было ограничено.
Цель была выяснить не производительность процессора, а производительность разных фреймворков. Зная производительность на 1 ядре я могу примерно понять производительность на 2-ух и более.
Я использовал только 1 ядро процессора в своем тесте, это стоит учитывать.
Я сравнил только для текста с EventMachine. Когда я дошел до теста с раздачей файлов, я уже для себя решил, что буду использовать Python. Поэтому такой тест не проводил, к сожалению.

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность