Resque::enqueue storage data into the Redis queue, the worker takes out Json_decode sometimes is incomplete (when the traffic is large, the probability of the chance is higher, not fully verified)!
Depressed to the extreme. Read through the multi-php-ressue code, but also very clear, do not see what the problem ah. Php-ressue in the log as follows (rescue.php),
public static function pop($queue) { $item = self::redis()->lpop('queue:' . $queue); if(!$item) { return; } $result = json_decode($item, true); if(!is_array($result)) error_log('why not array : ' . $item); return $result; }
The PHP log will appear a few times a day, why is not array: The output of $item is not a valid JSON
Which brother has experience, give some idea? Give some advice?
Reply content:
Resque::enqueue storage data into the Redis queue, the worker takes out Json_decode sometimes is incomplete (when the traffic is large, the probability of the chance is higher, not fully verified)!
Depressed to the extreme. Read through the multi-php-ressue code, but also very clear, do not see what the problem ah. Php-ressue in the log as follows (rescue.php),
public static function pop($queue) { $item = self::redis()->lpop('queue:' . $queue); if(!$item) { return; } $result = json_decode($item, true); if(!is_array($result)) error_log('why not array : ' . $item); return $result; }
The PHP log will appear a few times a day, why is not array: The output of $item is not a valid JSON
Which brother has experience, give some idea? Give some advice?