Na strani, ko uporabniki komentira fotografijo, skripta preveri komu vse mora poslati email. Vendar celoten proces samega pošiljanja emaila traja enostavno predolgo (od 2-10 sekund).
Malo sem raziskoval kaj v PHP kodi porabi največ časa in našel to:
// fetch response line after line
while (!feof($fp)) {
$result = fgets($fp, 1);
if (strlen($result)!=0) {
if (substr($result, 0, 3) == 250) {
$ok = 1;
// lower timeout after first valid response
if (function_exists('stream_set_timeout')) {
stream_set_timeout($fp, 1);
}
}
else {
// reset ok on error
$ok = 0;
break;
}
}
else {
// EOF
break;
}
}
Od začetka tega "ukaza" pa do konca se porabi tisti 2 oziroma 10 sekund.
Je kdo tako dober in mogoče iz te kode lahko razbere ali je kakšna možnost optimizacije oziroma popravka?