Every PUT, GET or DELETE operation on an object (the most frequent set of REST API operations) requires the proxy server to check for the existence of the account and container to validate the request. The proxy server uses HEAD requests on the account and another HEAD request on the container to check their existence, caching the positive or negative result of those requests for "recheck_account_existence" or "recheck_container_existence" proxy server configured number of seconds. When the number of containers in an account grows sufficiently large, or likewise the number of objects in a container, these HEAD requests result in expense directory listing operations involving multiple stat() system calls per file/directory.
This is currently being 'solved' by not walking the file system tree. The behavior can be modified in /etc/swift/fs.conf