Welcome! Log In Create A New Profile

Advanced

Re: Perl: Nginx

Alexandr Gomoliako
December 28, 2011 10:18AM
On 12/28/11, Dmitry E. Oboukhov <unera@uvw.ru> wrote:

> ngx_connector "1.2.3.4", 80, 15, sub {
>
> };
> ngx_connector "1.2.3.3", 80, 15, sub {
>
> };
> ngx_connector "1.2.3.5", 80, 15, sub {
>
> };

> в одном из них выясняется что два других нам уже не нужны (если они
> еще не выполнились). Вопрос как остановить процесс установления
> коннекта?

Внутри:

ngx_connector "1.2.3.5", 80, 15, sub {
return NGX_CLOSE if $someone_already_responded;
...
};

Этого должно быть достаточно, подключение может происходить успешно,
но возвращать ошибку сразу при попытке отправить данные или получить.
Т.е. все равно нужно ждать дольше.

http://zzzcpan.github.com/nginx-perl/Nginx.html#FLOW_CONTROL

> Или удалить процесс ngx_reader с сокета (и возможно заменить его
> другим)?

Можно переопределять сколько угодно раз, но только явно:

ngx_reader $c, .. sub {
...
ngx_reader $c, .. sub {
...
};

return NGX_READ;
};

Т.е. весь flow будет выстроен в лесенку.
Но лесенка будет маленькая, т.к. ими можно управлять:

my $min = 10;
my $max = 10;
my $timeout = 15;
my $buf;

ngx_reader $c, $buf, $min, $max, $timeout, sub {

if ($something) {
$min = 50;
$max = 100;
$timeout = 5;
return NGX_READ;
}
...
};

> и что такое $c? обычный handler? то есть можно ли этим функциям
> подсовывать сокеты, которые открыты из perl'ового кода? Этот вопрос
> как-то не раскрыт остался

Это не сокет, это указатель на ngx_connection_t, который хранит в себе
все остальное.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Perl: Nginx

Dmitry E. Oboukhov December 28, 2011 09:08AM

Re: Perl: Nginx

Михаил Монашёв December 28, 2011 09:22AM

Re: Perl: Nginx

Dmitry E. Oboukhov December 28, 2011 09:38AM

Re: Perl: Nginx

Alexandr Gomoliako December 28, 2011 10:18AM

Re: Perl: Nginx

Dmitry E. Oboukhov December 28, 2011 10:32AM

Re: Perl: Nginx

Alexandr Gomoliako December 28, 2011 10:36AM

Re: Perl: Nginx

Dmitry E. Oboukhov December 28, 2011 09:24AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 308
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