Yes, I prefer Roberto's/acs-templating's style too.
As far as the problem at hand ... David's right. The "ad_conn" code your looking at caches information for a single HTTP request. The code's called by a filter invoked for each HTTP request and caches information related to that request. As David mentions GLOBALs are local to each interpreter, so they're appropriate for caching per-connection information.
You're trying to cache information across interpreters and, again as David mentions, nsv_* will do this. You could also look into using ns_cache (check util_memoize).