Twisted, Gevent Eventlet - Когда я буду использовать их - PullRequest
9 голосов
/ 10 декабря 2010

При каких обстоятельствах что-то вроде eventlet / gevent будет лучше, чем витое? Twisted кажется наиболее используемым, но у eventlet / gevent должны быть некоторые преимущества ... Я не ищу ответа на конкретный сценарий, просто общие сведения.

1 Ответ

10 голосов
/ 10 декабря 2010

Это вопрос эстетического предпочтения, я думаю.

Прежде всего, eventlet может фактически использовать Twisted для работы в сети, поэтому, в некотором смысле, это не вопрос или вопрос, это вопрос, который «построен на вершине».

Лично я не вижу необходимости в таких библиотеках, как gevent или eventlet, особенно после появления декоратора @inlineCallbacks в Twisted, который уже пишет код, который выглядит как будто он блокирует.

Но, если у вас есть большая библиотека кода, которая уже использует потоки, и вы хотите перенести ее на управление событиями, что-то вроде eventlet может сэкономить вам некоторую печать, поскольку вам не нужно вставлять 'yield повсюду .. Некоторые люди, такие как парни из онлайн-игры EVE, думают, что код, написанный в этом стиле, просто лучше для некоторых вещей, таких как код AI.

...