Hi Wally,
Sorry to hear about the block.
> The internet is indeed a funny place.
> I did respond with a question on how to set this up but have received
> no answer?
>
> Any ideas anyone?
Setting up a proxy server is a non-trivial task (I'm not saying it's
hard, just non-trivial) so you're not likely to get a lot of dedicated
help for it here. May be worth seeking out other newsgroups for the
technical details (if you haven't already!).
Most commercial-grade web software such as Apache[1] or nginx[2] can
be set up to proxy, and there are several dedicated proxy packages as
well (such as Squid[3]). I've been hearing very good things about
nginx the last year or so, but have virtually no direct experience
with it (and not that much experience setting up proxies at all, so
take all of this with a grain of salt).
[1]
http://httpd.apache.org/
[2]
http://nginx.net/
[3]
http://www.squid-cache.org/
But since you'll need a hosting provider of some sort for the proxy,
and it sounds as though this is going to be your main reason for
having that other hosting service, it may be worth considering
approaching hosting providers who will set up and maintain the proxy
for you, rather than doing it yourself. I searched for "proxy
hosting" and there's a whole industry out there you can tap into. It
depends on whether this is something you want to add to your set of
skills. Naturally, you'll want to be sure that the proxy hosting
company itself isn't blocked in China! Given what they do, I suspect
a fair number of them are, but the censors can't keep on top of all of
them, and you can switch as necessary (the joys of proxying!).
A downside of the proxy approach is that you'll end up paying anywhere
from twice to six times as much for at least some of your site's
traffic -- the parts that can't be cached. Say you host the proxy at
Acme Hosting Company. Where before your traffic costs on a request
for dynamic content were:
* Inbound cost at AppEngine (receiving request from end user's
browser)
* Outbound cost at AppEngine (sending reply to end user's browser)
with a proxy you'll be paying:
* Inbound cost at Acme (receiving request from end user's browser)
* Outbound cost at Acme (sending request to AppEngine)
* Inbound cost at AppEngine (receiving request from proxy)
* Outbound cost at AppEngine (sending reply to proxy)
* Inbound cost at Acme (receiving reply from AppEngine)
* Outbound cost at Acme (sending reply to end user's browser)
So you'll need to shop around with that in mind. Again, that's only
the dynamic content; if the proxy can satisfy the request from cache,
it will, and so you wouldn't end up paying AppEngine transfer costs
(or CPU time costs) on that particular request at all.
Some suggestions related to that:
* Provide a transparent redirect mechanism or some such for users who
can go direct, so avoid putting unnecessary load and throughput on the
proxy.
* Be sure that your site's content is as cacheable as possible (but
this is always a good idea). The more cacheable your site, the faster
it seems to be, because there's a fair bit of caching that goes on out
in the cloud if you let it; caching doesn't only happen at the end
user's browser.
* Make sure all of the links in the chain are using compression (gzip,
etc.) whenever possible.
Wow, longer post than I intended. Anyway, FWIW, and good luck,
--
T.J. Crowder
tj / crowder software / com
Independent Software Engineer, consulting services available