← Back to team overview

openstack team mailing list archive

Could tokens be cached in memcached on swift-proxy while auth by keystone ?

 

Hi , folks

I'm confusing about the usage of memcached on Swift-proxy serve.  There's
the description in Swift dev-doc
http://swift.openstack.org/deployment_guide.html?highlight=token#memcached-considerations

Memcached Considerations
Several of the Services rely on Memcached for caching certain types of
lookups, such as auth tokens, and container/account existence. Swift does
not do any caching of actual object data. Memcached should be able to run
on any servers that have available RAM and CPU. At Rackspace, we run
Memcached on the proxy servers. The memcache_servers config option in the
proxy-server.conf should contain all memcached servers.

In my knowing , Tempauth uses Memcached to store tokens . So that I always
thought swift-proxy will cache "validated tokens" in memcached before
expired.

Also , this consideration keeps in my mind . But it seems not like what I'm
thinking while authenticate by Keystone.  Swift-proxy does not cache
validated tokens in memcached .  It always try to validate client's token
by query keystone for every requests.
I'm interesting about the reasons of this design. Isn't better letting
swift-proxy to check client's token in memcached first ?

My reasons :
1. Decreasing keystone's loading
2. Faster response time for a request
3. Better bandwidth leverage

So , for keystone as authentication server for swift .  Memcached is in
charge of caching rings , container/account existence. It does not
responsible for cache validated tokens anymore .  Am I right ? Or just I
miss some configuration for this option?

Any clarify would be great ...................



Cheers
-- 
Hugo Kuo @ Taiwan

tonytkdk@xxxxxxxxx
+ <tonytkdk@xxxxxxxxx>886 935004793

Follow ups