LINUX.ORG.RU

perl proxy server


0

0

Здравствуйте. Посоветуйте, какую архитектуру прокси-сервер можно реализовать с точки зрения макс быстродейтсвия? Язык программирования - perl. Прокси сервер висит но порту, принимает коннекты. Получает данные от пользователя, передает их куда надо, получает овтет и возвращает его пользователю.

Из того, что я придумал - poll/select (не уверен, что они есть в перле, но думаю должны)

threadings - но думаю это дорого на каждого клиента запускать поток.

★★★★★

Ответ на: комментарий от Neksys

Спасибо за линк, но это немного не то. Мне не нужен готовый прокси. Я наверное немного не так выразился, но т.к. вопрос задавал относительно дизайна, думал это некретично. Разрабатываемый прокси должен быть более интеллектуальным, чем просто переправлять запросы или отдавать из кеша. На основании этих запросов могут выполняться разлиные действия и т.п.

В общем интересует именно архитектура, с помощью которой оптимально сделать прокси-сервер (делающей некоторую обработку поступающих к нему данных).

roy ★★★★★
() автор топика
Ответ на: комментарий от roy

Посмотри как iprelay сделан, хотя это не прокси, а просто редиректор портов.

Deleted
()

Не мучайся, бери классику - fork.

Если так критично быстродействие, или очень много клиентов то перл бы не выбрал. А памяти оно не много жрет.

roller ★★★
()
Ответ на: комментарий от roller

Просто для перла есть все нужные модули. Т.е. просто получить коннект, и форкнуть процесс для его обработки? Ну да, самый простой вариант.

roy ★★★★★
() автор топика

> Посоветуйте, какую архитектуру прокси-сервер можно реализовать с точки зрения макс быстродейтсвия?

сервер с префоркнутыми серверами, которые уже пробрасывают соединение. потому как по получению соединения отфоркивать сервак для клиента может быть и правильно, но очень медленно...

vilfred ☆☆
()
Ответ на: комментарий от vilfred

Не ведись, есть уже КУЧА готовых модулей

вот например

http://search.cpan.org/~rhandom/Net-Server-0.94/ http://search.cpan.org/~jwied/Net-Daemon-0.39/lib/Net/Daemon.pm http://search.cpan.org/~chstross/NetServer-Generic-1.03/Generic.pm

хотя, можно и самому написать, там кода то строчек 20

roller ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.