Does anyone have any experience of using Visitor Groups on a site that uses an extra layer of caching/traffic management? I'm not sure whether this extra layer of caching will cause the Visitor Groups to only be checked for the 1st person to visit a page?
What exactly do you mean by "an extra layer of caching"? Are you talking about a CDN or something at the IIS level?
In the case of using output caching on the web server or a cache server such as Varnish the rendered content would be cached on the first request, resulting in subsequent requests being rendered as if they are from a visitor in the same group(s) as the first one.
There are a number of ways to tackle this that I can think of, although they all have their price:
None of these solutions are optimal of course, but combining several of them should be able to let you use personalization withouth suffering performance wise.
Thanks for the responses. Joel describes the cache layer correctly. The site has a large volume of traffic with surges at busy times and the cache servers allow the environment to handle this load.The aim of using Visitor Groups is to check whether a user is a mobile user and then serve pages using the MobilePack functionality. I will look into the pros and cons of those points in this instance.
In that case maybe you can configure your cache layer to vary by the User-Agent HTTP header? You'd then probably end up caching the same content quite a few times (once for each user agent and OS combination) but unless you have a huge site running on servers with very little memory I would guess that it isn't a problem.