Welcome! Log In Create A New Profile

Advanced

Re: Генерация ответа для клиента и асинхронные сокеты

Maxim Dounin
September 23, 2013 11:24AM
Hello!

On Mon, Sep 23, 2013 at 02:49:24AM -0400, Aleus Essentia wrote:

> Добрый день!
>
> Мой модуль работает по следующему алгоритму:
> 1) Получает заголовок от клиента;
> 2) Записывает по специальному формату заголовок в сокет другого сервера;
> 3) Закрывает на запись сокет;
> 4) Читает ответ: заголовок и html-страницу из этого же сокета;
> 5) Отдаёт полученный заголовок и html клиенту.
>
> Всё бы было хорошо, но работать с сокетами нужно асинхронно, а сейчас чтение
> и запись происходит блокирующим способом.
> Подскажите, следуя каким принципам, я должен составить код для асинхронного
> получения заголовка и html из сокета?
>
> Прочитал про регистрацию событий в этой статье:
> http://green-shaman.livejournal.com/32600.html. Но там не написано, где я
> должен вызывать функцию регистрации событий и где могу разместить код,
> отрабатывающий после прочтения всего ответа из сокета?

Я бы рекомендовал для начала ознакомится с кодом самого nginx'а.
В частности - с кодом модуля upstream использующих его модулей
(memcached, proxy).

Ну и Evan'а Miller'а почитать, если ещё не (а судя по вопросам -
таки не). Ссылки есть тут:

http://nginx.org/en/links.html

Там не всё соответствует текущему положению вещей в плане деталей,
местами API поменялось, но вы, по крайней мере, начнёте понимать,
о чём идёт речь.

--
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Генерация ответа для клиента и асинхронные сокеты

Aleus Essentia September 23, 2013 02:49AM

Re: Генерация ответа для клиента и асинхронные сокеты

Maxim Dounin September 23, 2013 11:24AM

Re: Генерация ответа для клиента и асинхронные сокеты

Aleus Essentia September 25, 2013 11:36PM

Re: Генерация ответа для клиента и асинхронные сокеты

Maxim Dounin September 26, 2013 08:26AM

Re: Генерация ответа для клиента и асинхронные сокеты

Aleus Essentia October 02, 2013 07:49PM

Re: Генерация ответа для клиента и асинхронные сокеты

Aleus Essentia September 26, 2013 03:06AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 295
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready