<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Mon, 20 May 2013 03:54:29 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Justin Carmony's Blog: PHP Workers with Redis & Solo]]></title>
      <guid>http://www.phpdeveloper.org/news/17378</guid>
      <link>http://www.phpdeveloper.org/news/17378</link>
      <description><![CDATA[<p>
In <a href="http://www.justincarmony.com/blog/2012/01/10/php-workers-with-redis-solo/">this latest post</a> to his blog <i>Justin Carmony</i> shares some of his experience using Redis and <a href="http://timkay.com/solo/solo">Solo</a> to asynchronously run queries and return data without the user having to wait. 
</p>
<blockquote>
Sometimes there are situations when you want to parallel process things. Other times you might have a list of tasks to accomplish, and you don't want to make the user wait after pressing a button. This is where "Workers" can come in. They are independent scripts that run along side of your application, performing tasks, or "jobs."
</blockquote>
<p>
Solo is a very basic Perl script that ensures only one process of a type is running at once. Using this and a PHP library called <a href="https://github.com/nrk/predis">predis</a>, he shows how to set up workers and add items to your processing queue. The workers themselves run on a cron job and connect to the queue server to see what they need to do. He also throws in some "bells and whistles" - extras that can enhance your worker system: queue monitoring, version numbering and killing workers based on a hash value.
</p>
<p>
His code examples are posted on <a href="https://github.com/JustinCarmony/PHP-Workers-with-Redis-Solo-Examples">his github account</a> and a screencast is <a href="http://www.justincarmony.com/blog/2012/01/10/php-workers-with-redis-solo/">included in the post</a> to show the system in action.
</p>]]></description>
      <pubDate>Wed, 11 Jan 2012 11:50:52 -0600</pubDate>
    </item>
  </channel>
</rss>
