In Google App Engine we can have multiple versions of an app running at the same time. Our main version's link would be at appid.appspot.com and a different version would be at version.latest.appid.appspot.com.
Say I make a new version, but I only want 10% of my user base to see it for a while, to make sure any problems with it don't affect everyone that uses my site.
How can I do this cleanly?
The obvious way I can think of is that I would send a redirect to the new version for 10% of the users. But I don't think that is a good solution because then they would be browsing on a different domain and any bookmarks they make won't be valid later.
With normal infrastructure, a proxy that diverts 10% to the new version would be simple. How could I do this on the app engine though?
I suppose from the main version I could URL fetch the newer version and pass it along to the client, but would that be slow, and might it cause any complications?