Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> нитик 
:(
    Опции темы
noneg
Дата 29.3.2011, 11:15 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 21.1.2011

Репутация: нет
Всего: нет




Вот для наглядности код..вообщем мне надо что бы скрипт посылал запросы на сайт  
я плохо разбераюсь в многопоточности, через такую реализацию..в итоге получается..что он сначало много запросов делает на первый сайт 10-15 а потом уже пару на второй, до 3 сайта запросы вообще помоему не доходят..А если скрипт разбить ...т.е создать 3 отдельных файла (а не вместе все как тут) то нормально работает..каждый шлет как надо...но меня это не устраивает..наверняка как-то можно все в одном реализовать...(или многопоточность как-то подругому лучше сделать)

Код

#!/usr/bin/perl

use strict;
use LWP::UserAgent;
use HTTP::Cookies;
use threads;
use threads::shared;
 
my $threads = 50 ;                                 
my @trl = ();
 
$trl[$_] = threads->create(\&start) for 0..$threads - 1;
$_->join for @trl;
 
sub start
{

 my $ua = LWP::UserAgent->new(timeout => 35,
                                 cookie_jar => new HTTP::Cookies);

 $ua->agent('Windows');

 push @{ $ua->requests_redirectable }, 'POST';
  
while(1) {

my $resp = $ua->post("http://site.ru",
[
"s" =>  "y",
"sub" => "x",
"subs" => "z",
"vis" => "w",])->as_string;

my $too = $ua->post("http://site.com",
[
"s" =>  "1",
"sub" => "2",
"subs" => "3",
"vis" => "4",])->as_string;

my $free = $ua->post("http://site.biz",
[
"s" =>  j",
"sub" => "k",
"subs" => "l",
"vis" => "w",])->as_string;

}


PM MAIL   Вверх
arto
Дата 29.3.2011, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



POE, AnyEvent, IO::Lambda, EV, Coro, IO::Multiplex etc.
PM MAIL ICQ   Вверх
noneg
Дата 29.3.2011, 18:39 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 21.1.2011

Репутация: нет
Всего: нет



а пример с мои кодом можно?))
PM MAIL   Вверх
Pfailed
Дата 29.3.2011, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 22
Всего: 39



Если с тредами разобрались, то смотрите модуль Coro. Его использование очень похоже на использование модуля threads.



--------------------
PM MAIL   Вверх
arto
Дата 29.3.2011, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



50€/hour
PM MAIL ICQ   Вверх
DurRandir
Дата 31.3.2011, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 335
Регистрация: 27.9.2009

Репутация: 14
Всего: 17



Поиск по форуму помогает. Этот вопрос возникает с переодичностью раз в три месяца)
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0999 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.