Retrieving memcache value for further processing
Markus Jelsma
markus at buyways.nl
Fri Feb 5 13:56:23 MSK 2010
Hello list,
I need some advice on how to solve my use-case. I have a memcache backend with
some keys and values. Every HTTP request carries a cookie with a SHA1 hash as
value, this cookie value is also a key in memcache.
I already can retrieve the value and send it as a HTTP response using the
following configuration:
# Check if we got the token, a 160bit SHA1 hash
if ($http_cookie ~* "token=([A-Za-z0-9]{40})")
{
# Attempt to retrieve the token from memcache
set $memc_cmd 'get';
set $memc_key $http_cookie; # TODO; remove `token=` prefix from key
memc_pass 127.0.0.1:11211;
}
The question is, how to actually retrieve the value in the configuration for
further processing. For instance, i would like to put the value in the header
before i proxy it upstream.
I have tried reading the $memc_value but it seems it does not contain the
result and that it is only being used for setting or appending a key. If i
proxy_pass to $memc_value after executing memc_pass, it throws an error,
telling me the $memc_value was still empty.
In the end i need to perform several small operations on some conditions with
several memcache values before proxying the entire request upstream. Can i
even do this with the configuration and memc addon? Or would i need some
inline perl script to do so?
I use the latest 0.7 Nginx and 0.6 Memc addon.
Regards,
Markus Jelsma - Technisch Architect - Buyways BV
http://www.linkedin.com/in/markus17
050-8536620 / 06-50258350
More information about the nginx
mailing list