Log in

No account? Create an account

Libmemcached 0.38 Release

« previous entry | next entry »
Feb. 11th, 2010 | 09:31 am

From the Changelog:

  • C++ interface for libhashkit.
  • Modified memcached_set_memory_allocators() so that it requires a context pointer.
  • memcached_clone() now runs 5 times faster.
  • Functions used for callbacks are now given const memcached_st.
  • memslap now creates a configuration file at ~/.memslap.cnf
  • memcached_purge() now calls any callbacks registered during get execution.
  • Many fixes to memslap.
  • Updates for memcapable.
  • Compile fixes for OpenBSD.
  • Fix for possible recursive decent on IO failure.

    Possibly the most exciting piece is the performance wins for memcached_clone(). In a lot of situations developers use libmemcached with Apache. Each time an Apache process has to be created a clone() call is made (in some PHP architectures this happens with each request). On local testing this went from around ~300ms for me, down to ~28ms in one particular setup.

    If you haven't checked out memslap in recent versions you should. Schooner Technology did quite a bit of work on the tool. You can read up on the new version here.

    We also have updates to memcapable, so if you are interested in seeing how compliant your memcached appliance is, you should check it out.

    You can find the latest and greatest here:

  • Link | Leave a comment |

    Comments {2}

    Dreamer of the Day

    (no subject)

    from: iamo
    date: Feb. 11th, 2010 10:06 pm (UTC)

    In what kind of apache setup would it be creating a process for every request? 300ms/req is one hell of a hit to take.

    Reply | Thread

    Brian "Krow" Aker

    (no subject)

    from: krow
    date: Feb. 11th, 2010 10:08 pm (UTC)

    I've seen PHP folks call memcached_clone() for each page view in order to keep their memcached_st protected from screwup.

    The 300ms was a particularly bad case (someone how has a few thousand servers).

    Reply | Parent | Thread