ФорумСообществоФлейм → Panic Client Emulator

Panic Client Emulator

  • artoodetoo

    Сообщения: 5138 Репутация: N Группа: в ухо

    Spritz 15 января 2013 г. 12:53

    Провайдер домашнего интернета меня расстраивает. Собираюсь сменить. Удручает только то, что другие не лучше.

    В связи с этим написал эмулятор жизни клиента. Если у текущего провайдера случается проблема, клиент уходит к другому. Прошу любить:

    <?php

    header(&#39;Content-type: text/plain&#39;);

    $providers = array(&#39;prov A&#39;, &#39;prov B&#39;, &#39;prov C&#39;);
    $counters = array(
    &#39;client&#39; => 0,
    &#39;prov A&#39; => 0,
    &#39;prov B&#39; => 0,
    &#39;prov C&#39; => 0);

    // CURRENT CLIENT&#39;S PROVIDER
    $cur_prov = &#39;prov A&#39;;

    set_time_limit(0);
    for ($i = 1; $i <= 100000; ++$i) {
       // each provider has right to fail
       foreach ($providers as $prov) {
           // if shit happens
           if (mt_rand(1, 10) == 5) {
               $counters[$prov]++;
               // and our client is on THIS provider
               if ($cur_prov == $prov) {
                   $counters[&#39;client&#39;]++;
                   // client looking for better provider
                   while (TRUE) {
                       // reasonable choice
                       $x = mt_rand(0, count($providers)-1);
                       $next_prov = $providers[$x];
                       if ($cur_prov != $next_prov) {
                           $cur_prov = $next_prov;
                           break;
                       }
                   }
               }
           }
       }
    }

    // Results
    var_export($counters);


    100тыщ достаточно большое число чтобы статистические законы работали.
    ιιlllιlllι унц-унц
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 15 января 2013 г. 13:15, спустя 22 минуты 7 секунд

    Этот скрипт на домашней тачке работает?
  • phpdude

    Сообщения: 26618 Репутация: N Группа: в ухо

    Spritz 15 января 2013 г. 13:22, спустя 7 минут 28 секунд

    ЗАПУСТИЛ НА ПРОДАКШЕНЕ
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!