Hi,

On Thu, Mar 5, 2009 at 8:05 AM, Apostol Victor <[email protected]> wrote:
> since this is may first post here, i first wish to say @Hello all.
> In our projects we're using memcache for some times, changing from file
> system based solutions since the later ones were not stable anymore when
> traffic grew up (operations on file system are not atomic and we've
> encountered often overload on database system).
> Recently we've adopted Zend Framework as our core development framework and
> implemented memcache but I've noticed that the "weight" parameter used for
> addServer method (memcache library) is not available for
> Zend_Cache_Backend_Memcached backend.
> Is not difficult to add this but i don't feel comfortable in changing
> sources of the Framework or extending them for these kind of reasons.
> Although "weight" is an optional parameter, for a big pool of memcache
> servers may be important specially when you're using machines running for
> different other services and having different amount of memory available.
> I don't understand why they missed this...if somebody here have some ideas
> about this, feel free to speak about them.

It was done but not documented.

Now, it's done and documented (in SVN trunk).

Here is all available options :

    /**
     * Available options
     *
     * =====> (array) servers :
     * an array of memcached server ; each memcached server is
described by an associative array :
     * 'host' => (string) : the name of the memcached server
     * 'port' => (int) : the port of the memcached server
     * 'persistent' => (bool) : use or not persistent connections to
this memcached server
     * 'weight' => (int) : number of buckets to create for this server
which in turn control its
     *                     probability of it being selected. The
probability is relative to the total
     *                     weight of all servers.
     * 'timeout' => (int) : value in seconds which will be used for
connecting to the daemon. Think twice
     *                      before changing the default value of 1
second - you can lose all the
     *                      advantages of caching if your connection
is too slow.
     * 'retry_interval' => (int) : controls how often a failed server
will be retried, the default value
     *                             is 15 seconds. Setting this
parameter to -1 disables automatic retry.
     * 'status' => (bool) : controls if the server should be flagged as online.
     *
     * =====> (boolean) compression :
     * true if you want to use on-the-fly compression
     *
     * =====> (boolean) compatibility :
     * true if you use old memcache server or extension
     *
     * @var array available options
     */
    protected $_options = array(
        'servers' => array(array(
            'host' => self::DEFAULT_HOST,
            'port' => self::DEFAULT_PORT,
            'persistent' => self::DEFAULT_PERSISTENT,
            'weight'  => self::DEFAULT_WEIGHT,
            'timeout' => self::DEFAULT_TIMEOUT,
            'retry_interval' => self::DEFAULT_RETRY_INTERVAL,
            'status' => self::DEFAULT_STATUS
        )),
        'compression' => false,
        'compatibility' => false,
    );


Regards

-- 
Fabien MARTY
[email protected]

Reply via email to