stampede herd, also known as dog pile issue.

1. Ghetto central locking (or other kind of locks)
key  = "expensive_frontpage_item"
item = memcli:get(key)
if (! defined item) {
        # Oh crap, we have to recache it!
        # Give us 60 seconds to recache the item.
        if (memcli:add(key . "_lock", 60)) {
                item = fetch_expensive_thing_from_database
                memcli:add(key, item, 86400)
                memcli:delete(key . "_lock")
        } else {
                # Lost the race. We can do any number of things:
        # - short sleep, then re-fetch.
        # - try the above a few times, then slow-fetch and return the item
        # - show the user a page without this expensive content
        # - show some less expensive content
        # - throw an error
        }
}

2. stale time and expire time.
 very long expire time but relatively short stale time
 2.1 stale time embedded in value
 2.2 two keys, key-MAIN/key-STALE....doubleing key space...
add simple description about groupcache

which is developped by memcached original author Brad.