Skip to content

Instantly share code, notes, and snippets.

@fedeisas
Created March 28, 2013 03:56
Show Gist options
  • Save fedeisas/5260467 to your computer and use it in GitHub Desktop.
Save fedeisas/5260467 to your computer and use it in GitHub Desktop.
Azure Worker example
<?php
use WindowsAzure\Common\ServicesBuilder;
use WindowsAzure\Common\ServiceException;
Class Worker_Task {
public $queueRestProxy;
public $servicesBuilder;
public $connectionString;
public function __construct() {
$this->connectionString = 'MYCONNECTIONSTRING';
$this->servicesBuilder = ServicesBuilder::getInstance();
$this->queueRestProxy = $this->servicesBuilder->createQueueService($this->connectionString);
}
public function emails() {
while(true) {
$this->queueRestProxy = $this->servicesBuilder->createQueueService($this->connectionString);
// Get message.
$listMessagesResult = $this->queueRestProxy->listMessages("emails");
$messages = $listMessagesResult->getQueueMessages();
foreach($messages as $message) {
// Process Message
// Delete Job
$this->deleteJob('emails', $message->getMessageId(), $message->getPopReceipt());
}
sleep(30); // if the process sleeps for more than 30 seconds, the socket dies
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment