4 ms·
Ask HN: Do you need a reverse proxy ("RPaaS") in the cloud?
I've worked on numerous web service/sites which needed a reverse proxy either for load balancing, versioning, or deployment. This was usually achieved by using a custom system or nginx; however, it would be great if this was an offering part of EC2, Azure, etc. Would you want a reverse-proxy-as-a-service? If so, how would you use it?
- nl 16y agoEC2 has this already: http://aws.amazon.com/elasticloadbalancing/ http://aws.amazon.com/elasticloadbalancing/
- mskierkowski 16y agoThe Amazon Load Balancer only performs load balancing... a reverse proxy can be used for a whole lot of other scenarios... here are just a few... Rolling Upgrades: you have 20 instances of V1 of your app, you want to slowly test them out, so you start with moving 5 instance to V2, then 5 more, etc. To switch from V1 to V2 gradually to make sure there are no major snags. Versioning: Make a single API available at the address http://foo.com/V1 http://foo.com/V1 and http://foo.com/V2 http://foo.com/V2 but those actually go to two different servers running two different applications. Sub domain to path rewrite: You want to provide customers with sub-domains at <customer>.foo.com but it actually serves up contents from service.foo.com/<customer> on the back-end. Virtual Sites on single server: Some providers (i.e. some shared services) only allow you to have one or just a few domains/sub-domains for a single instance of your application. Now you can have http://foo.com http://foo.com and http://bar.com http://bar.com actually host up pages from http://foobar.com/ http://foobar.com/ and the original requested address will be in a new HTTP header so your app at http://foobar.com/ http://foobar.com/ can distinguish the two. Instance Allocation per customer: Some multi-tenant architectures have a "home" node for each customer. In this case you could setup a rule that states that customer a.foo.com goes to instance x while customer b.foo.com goes to instance y.
- HerraBRE 16y agoI am actually already offering a very similar service, although it is optimized for a somewhat different use case. The service is here: http://pagekite.net/ http://pagekite.net/ It's useful for all kinds of things. :-)
- mskierkowski 16y agoThanks for the pointer. You should check out Microsoft Windows Azure AppFabric Service Bus (http://www.microsoft.com/windowsazure/AppFabric/Overview/default.aspx http://www.microsoft.com/windowsazure/AppFabric/Overview/def...). It's supported for .NET by MSFT; however, I think there are other implementations for other platforms. Technologically it is very similar. (I used to be a Program Manager on that team not long ago). I understand the technology quite well; however, (hope I don't sound rude) I'm not clear on what the value is to the customer (presumably developer) of pagekite.net. Please email me; my email address is on http://www.skierkowski.com/ http://www.skierkowski.com/ (I have CAPTCHA on there which is why I don't just give it to you here).
- HerraBRE 16y agoJust to answer here as well (I'll be in touch), the easiest pitch is to content creators who want to remove the "deploy stuff to some server in order to show progress to clients and coworkers" step from their work flow. Obviously, this is most applicable to people working on web designs or web app development. Another way to think of it, is that anyone who uses dynamic DNS today might find PageKite is a better fit for certain tasks. Dynamic DNS only works when a device is immobile and you have a visible, unfiltered IP. PageKite doesn't have those limitations, and is way easier to set up. There are many reasons to want to be able to run a simple server on a personal computing device, we've just been beaten out of the habit of even considering it by firewalls and NAT. So you are absolutely right that the value is often unclear to people at first - we have a definite up-hill struggle ahead in marketing this. I am optimistic though, because so far most techies who have given it a try found it so convenient all their objections melted away.