简体   繁体   中英

Zend Job Queue API - Unknown error

I'm trying to use the createHttpJob method in the Zend Job Queue API, but keep coming across the following error:

Unable to send createHttpJob request to the Job Queue server. Unknown error.

The code I'm using is:

// Set up job queue
$queue = new \ZendJobQueue();

// Queue email to be sent
$job_id = null;
$counter = 10;
do {
    try {
        $job_id = $queue->createHttpJob($this->url()->fromRoute('email', array('action' => 'send-email')), array('email_id' => $email_id), array('job_timeout' => 14400, 'name' => 'Sending Email: ' . $email_id));
    } catch (\Exception $e) {
        usleep(100000); // 0.1 seconds
        $counter--;
        if($counter <= 0) {
            $response = $this->getResponse();
            $response->setContent(json_encode(array(
                    'success' => false,
                    'zend_queue' => true,
                    'exception' => $e->getMessage(),
                    'stack' => $e->getTraceAsString()
            )));
            return $response;
        }
    }
} while (!$job_id && $counter > 0);

which basically tries to add the job to the queue, and after 10 failed attempts, it will return an error back to the front-end.

Of course with it being an unknown error , I'm not expecting anyone to be able to solve the issue outright, but I was wondering if anyone had come across the issue before and if they were able to do anything to prevent it?

Thanks in advance!

So I found this small piece of information here :

Parameters sent to a job cannot exceed the size defined in the 'zend_jobqueue.max_message_size' directive which has a maximum size limit of 64KB.

I was sending more than 64KB at times which happened to be the requests that were producing this unknown error . I don't know if that was the exact cause of the issue (if so, it would be nice to have a more descriptive error message!), but the requests all seem to be going through now with no problem.

Hope this will help someone in the future!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM