Algo más rápido que get_headers ()

Estoy tratando de hacer un script PHP que verifique el estado HTTP de un sitio web lo más rápido posible.

Actualmente estoy usando get_headers () y ejecutándolo en un bucle de 200 URL aleatorias de la base de datos mysql.

Para verificar los 200, se tarda un promedio de 2m 48s.

¿Hay algo que pueda hacer para hacerlo (mucho) más rápido?

(Sé sobre fsockopen: puede verificar el puerto 80 en 200 sitios en 20 años, pero no es lo mismo que solicitar el código de estado http porque el servidor puede responder en el puerto, pero puede que no esté cargando sitios web correctamente, etc.)

Aquí está el código ..

<?php
  function get_httpcode($url) {
    $headers = get_headers($url, 0);
    // Return http status code
    return substr($headers[0], 9, 3);
  }

  ###
  ## Grab task and execute it
  ###


    // Loop through task
    while($data = mysql_fetch_assoc($sql)):

      $result = get_httpcode('http://'.$data['url']);   
      echo $data['url'].' = '.$result.'<br/>';

    endwhile;
?>

Respuestas a la pregunta(4)

Su respuesta a la pregunta