A php c extension beanstalkd client, multi-server support, high performance, using libbeanstalkclient.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
CREDITS
README
beanstalk.c
beanstalk_consistent_hash.c
beanstalk_pool.c
beanstalk_pool.h
beanstalk_standard_hash.c
config.m4
config.w32
php_beanstalk.h

README

1.Install  libbeanstalkclient
$mkdir php-beanstalk
$cd php-beanstalk/
$wget https://github.com/bergundy/libbeanstalkclient/tarball/master --no-check-certificate
$mv master bergundy-libbeanstalkclient-b6ec294.tar.gz
$tar -xzvf bergundy-libbeanstalkclient-b6ec294.tar.gz 
$mv bergundy-libbeanstalkclient-b6ec294 libbeanstalkclient
$cd libbeanstalkclient/
$mkdir m4
$sudo ./autogen.sh 
$sudo vim /etc/ld.so.conf
	/usr/lib
$sudo ldconfig

2.Install php-beanstalk
$wget https://github.com/nil-zhang/php-beanstalk/tarball/master --no-check-certificate
$mv master php-beanstalk.tar.gz 
$tar -xzvf php-beanstalk.tar.gz
$cd php-beanstalk
$phpize
$./configure
$make
$sudo make install
$sudo vim /etc/php.d/beanstalk.ini
	extension = "beanstalk.so"
$php -m

3.Using example
-----example.php----------
<?php

    $bsc = new Beanstalk();

    $bsc->addserver("ip1", 11300);
    $bsc->addserver("ip2", 11300);

    $tubes = $bsc->list_tubes();
    print_r($tubes);

    for($i = 0; $i < 10; $i++)
    {
        $key = "key".$i;
        $value = "value".$i;

        $bsc->use($key);
        $bsc->put($key, $value);
        echo "$key\t$value\n";

        $bsc->watch($key);
        $job = $bsc->reserve($key);
        print_r($job);

        if($bsc->bury($job['id'], $key))
            echo "bury ok\n";
        else
            echo "bury failed\n";

        $bsc->kick(100, $key);
        if($bsc->delete($job['id'], $key))
            echo "delete ok\n";
        else
            echo "delete failed \n";

        $bsc->ignore($key);
        echo "\n";
    }

    echo "done\n";

?>