Eu não estou muito familiarizado com os funcionários do nginx, então vou precisar de ajuda aqui. Eu tenho dois sites em um servidor
O segundo é usado para fazer a chamada API através do primeiro e receber o array json. Este é o cenário.
No arquivo link que tenho
function get_curl($url) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, false);
$result = curl_exec($curl);
curl_close($curl);
return $result;
}
$url=get_curl("http://example.com/api.php?ID=foo");
No link
function get_curl_from_api($url) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $url,
CURLOPT_HEADER=> 0,
CURLOPT_RETURNTRANSFER=> 0,
CURLOPT_SSL_VERIFYPEER=> 1,
CURLOPT_SSL_VERIFYHOST=>2
));
$resp = curl_exec($curl);
curl_close($curl);
return $resp;
}
$url=get_curl_from_api("https://thirdpartsite.com/".$_GET["ID"]);
De tempos em tempos, recebo em example-second
site NULL com erro no log
32224#32224: 10 worker_connections are not enough
Eu sei o que isso significa, já que no nginx.conf eu tenho
worker_processes auto;
events {
worker_connections 10;
multi_accept on;
use epoll;
}
Minha pergunta é como os trabalhadores trabalham exatamente porque isso acontece de tempos em tempos? Existe alguma sessão de cache ou keep-alive ou algo assim? E outra questão é possível obter alguma solução alternativa sobre isso sem aumentar o worker_connections? Talvez algum atraso na função de onda?