la solicitud ajax continua da error net::ERR_EMPTY_RESPONSE

pasos para reproducir el error

  1. abra http://www.blackboardjournals.com/test2.php
  2. haga clic en el siguiente botón continuamente durante 30-40 veces
  3. el contador se detiene después de cierto conteo
  4. la consola muestra un error net::ERR_EMPTY_RESPONSE
  5. si actualiza inmediatamente después de que se detiene el contador, el sitio deja de responder

No puedo entender por qué se produce este error. ¿alguien puede ayudarme a entender lo que está mal?

Mi código:

<?php

if(isset($_POST['btn_num'])){
    $btn_name=$_POST['btn_num'];
    echo $btn_name+1;
    exit();
};
?>
<script type="text/javascript">
function ajaxObj( meth, url ) {
    var x = new XMLHttpRequest();
    x.open( meth, url, true );
    x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    return x;
}
function ajaxReturn(x){
    if(x.readyState == 4 && x.status == 200){
        return true;    
    }
}

function call_next(){
    var new_ans=$('.number').html();
    var ajax =ajaxObj("POST",'test2.php');
    ajax.onreadystatechange=function(){
        if(ajaxReturn(ajax)==true){
            $('.number').html(ajax.responseText);           
        }
    }
    ajax.send('btn_num='+new_ans);
}

</script>
<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <script src="/pwa/js/jquery.js" ></script>
</head>
<body>
<div class="number">1</div>
<button onclick="call_next();">next</button>
</body>
</html>
Answer