ajax json_encode返回有时需要花费太多时间

I'm developing an application in PHP with many ajax call. Something like this:

$.ajax({
    url: 'urltocall.php',
    dataType: 'json',
    cache: false,
    contentType: false,
    processData: false,
    success: function(res) {...}
    error: function(data, errorThrown) {...}
});

on the other side in urltocall.php I have simple query to mysql and return the result with the command:

echo json_encode($results,JSON_UNESCAPED_UNICODE);

Everything is very simple and fast. But I noticed some delays when values returns. So I tested all the parts of this process with microtime(), before and after ajax call, before and after query, before and after the json_encode command and the result is that this last command is the bottleneck of all ajax calls. Changed web server, changed mysql server but sometimes I always have these delayes. Queries takes a few milliseconds, but json_encode "sometimes" takes 4 or 5 seconds to execute. Tested on server with only my web server, mysql db with one account working on it with small tables and simple insert. Tried even php-fpm but always sometimes I have these delays. I don't know where to look for a solution.