[Moscow.pm] непонятный стук

Ivan Petrov i.petro.77.00 на gmail.com
Пт Май 18 02:53:43 PDT 2012


>> и видим что ни БД ни скрипт не имеют ни в какой момент времени более
>> 10-15 открытых сокетов.
>> спустя минут 10 работы скрипт и вообще все приложения (включая
>> браузер) отваливаются "сеть недоступна".

> А ОС-то какая? Тут, мне кажется, не в перле дело (тем более, что соединяется
> скрипт, а не работает браузер)

вот такой скрипт:

без всяких AE.

#!/usr/bin/perl

use warnings;
use strict;

use utf8;
use open qw(:std :utf8);
use IO::Socket::INET;

my $port = $ARGV[0];


while(1) {
    my $s = IO::Socket::INET->new(PeerAddr => '127.0.0.1', PeerPort => $port);
    printf "Приконнектились: %s\n", $s ? 'да' : $!;
    close $s if $s;
}

берем скажем nginx и пускаем скрипт с параметром 80

через какое-то время исчерпываются свободные порты.

при этом и nginx и скрипт в /proc/PID/fd показывают около десятка
открытых сокетов всего.

похоже OS (Linux 3.1) имеет тайм некоторый на возврат порта в список
"свободных"

в другой рассылке посоветовали 3.2 посмотреть, там де какой-то баг
фиксили именно на эту тему, но я еще не пробовал


Подробная информация о списке рассылки Moscow-pm