ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


  • To: nginx-ru@xxxxxxxxx
  • Subject: Генерация ответа для клиента и асинхронные сокеты
  • From: "Aleus Essentia" <nginx-forum@xxxxxxxx>
  • Date: Mon, 23 Sep 2013 02:49:24 -0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=helium.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=PPZsBBaIIR/EyHFhkEyR1N6wNZkevzw9teui4uBUk0Y=; b=Q8CDAtwIlHZ5D66eEggXq9XSgz5VY8akwmbibDa7abMMGEA+wWGFdHe5+lQ1yrR+LEsKmWMJOb1YOoFsfQiCHcAjOEPsVUjCBryOJIAUO7S+J8/C3Y5LaixxpZD1nWZHOgFXSn7Pw/TBS23vQC5hpPe568E9RYWskGqicLdSOUc=;

Добрый день!

Мой модуль работает по следующему алгоритму:
1) Получает заголовок от клиента;
2) Записывает по специальному формату заголовок в сокет другого сервера;
3) Закрывает на запись сокет;
4) Читает ответ: заголовок и html-страницу из этого же сокета;
5) Отдаёт полученный заголовок и html клиенту.

Всё бы было хорошо, но работать с сокетами нужно асинхронно, а сейчас чтение
и запись происходит блокирующим способом.
Подскажите, следуя каким принципам, я должен составить код для асинхронного
получения заголовка и html из сокета?

Прочитал про регистрацию событий в этой статье:
http://green-shaman.livejournal.com/32600.html. Но там не написано, где я
должен вызывать функцию регистрации событий и где могу разместить код,
отрабатывающий после прочтения всего ответа из сокета?

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,243053,243053#msg-243053

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.