(Есть ли) преимущества ПРОИЗВОДИТЕЛЬНОСТИ сервера сокетов python по сравнению с обычным объектом сокета?

спасибо за интересные ответы. В свете полученных ответов я немного изменил свой вопрос.

угадайте, что мне действительно нужно знать, это сервер сокетов, а не прямая библиотека сокетов, предназначенная для обработки как периодов задержки, так и нагрузки, то есть имеет ли он дополнительные механизмы или функции, которые оправдывают его неявно объявленный статус в качестве «сервера» или его просто немного проще использовать?

Кажется, все рекомендуют socketserver, но мне до сих пор не совсем понятно, почему, в отличие от socket.

спасибо !!!

Я создал несколько серверных программ на python на основе стандартного сокета библиотека http://docs.python.org/library/socket.html

Я заметил, что они вроде работают просто отлично, за исключением того, что без нагрузки они имеют тенденцию ложиться спать спустя некоторое время. Я думаю, это не может быть проблемой в производстве (без сомнения будет много других вопросов) но я хотел бы знать, используя правильный код для работы здесь.

Осмотревшись, я увидел, что этот питон тоже предоставляет библиотеку сокетов - http://docs.python.org/library/socketserver.html

Библиотека сокета предоставляет способность слушать несколько соединений, обычно до 5.

Согласно странице socketserver , его услуги синхронны, т.е. блокировка, но можно поддерживать асинхронное поведение через многопоточность. Я заметил, что у него есть способность поддерживать очередь запросов с значение по умолчанию до 5 запросов ... так что может быть, нет большой разницы.

Я также читал, что Twisted работает socketserver под капотом. Хотя я предпочел бы не попасть в зверя размер Twisted, если он не собирается

, поэтому мой вопрос, - это сервер сокетов. более надежен, чем сокет? Если да, то почему?

(А откуда вы знаете?)

Кстати, сервер сокетов построен на вершина сокета питона или это полностью отдельный?

наконец, в качестве бонуса, если кто знает что можно сделать не так, что стандартные розетки "засыпайте" пожалуйста не стесняйтесь присоединяться к этому тоже.

О, и я говорю скорее о python 2.x чем 3.x здесь, если это делает разница.

спасибо, ребята!

jsh


Что ж, у меня нет технического ответа, но я реализовал SocketServer по рекомендациям людей, и он определенно более надежен. Если кто-нибудь когда-нибудь предложит объяснение на низком уровне, дайте мне знать ... спасибо!

10
задан Bill the Lizard 20 November 2011 в 14:10
поделиться