[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2575
  • Last Modified:

Pros and Cons of proxy servers?

I don't have a problem to solve but I'm interested in what the Experts have to say about the pro's and con's of proxy servers.  Specifically putting a proxy server that does caching in front of a web server. On the pro side, as I understand it the proxy caches the web server responses, thus relieving some of the load on the web server.  It can also have a security benefit because all requests are filtered through the proxy, and only the proxy is actually talking to the web server.
On the con side, you have the added expense of hardware and software, I work in a Windows shop.  Plus the proxy can become a bottleneck, or need repair of replaced.

I have a friend who works in a mixed enviroment, Linux and Windows, and who works on the Linux side of the fence.  He always sets up a Squid proxy in front of his Apache web servers.
The gains in performance are impressive, along with the decrease in the load on the web server.

I've talked with others who say that proxies are a pain and not worth the aggravation.  What are the views of some of you Experts out there who have experience with setting up proxie caching servers in front of web servers.  I work with IIS, but I'm no expert.  Windows 2003 Server and IIS v6.

Thanks for taking the time to reply and helping out those of us who are not experts.
0
Westez
Asked:
Westez
  • 4
  • 4
  • 3
  • +2
4 Solutions
 
meverestCommented:
Hi,

any decent modern web server will be able to do caching on web content - including dynamic.  Why would you want another server to cache the cached content, I have no idea.

improvement in performance will only be 'impressive' when the web server is not well resourced to begin with.

personally, I would say that 9 times out of 10, a proxy server will provide no benefit at all - in fact quite the opposite.

Cheers.
0
 
giltjrCommented:
It depends on your setup.  If you have a single web server serving up static content that has the proper capacity no a proxy server (actually it is called a reverse proxy server) will not help.

However, say your web server is really an application server and say you have 2, 3, or 20 of them.  Then a proxy server (actually at least two clustered for fail over) will help.

Proxy servers can help offload work from the web server in a couple of ways.  Caching static content, SSL offload, dynamic compression, and load balancing.  This can offload enough work from the back-end servers that you can either handle more work with the same number of servers or have fewer servers.

They do add hardware and software, but generally their cost is much less than a application server and depending on your enviroment can reduce the number of back-end servers you need.
0
 
sharepointguru14Commented:
fairly good summary above by qiltir. I would also add that they provide great performance boosts if you have a global orgainization that you have people all over the world hitting a server in a single space. Especially if that web server or application server is serving up fairly large files. You can from a single source push out all of the content to the edge proxy servers therefore increasing load time for your remote users (pulling content from a edge device in their local office rather than from across the globe) this loads pages quicker makes downloads faster and greatly reduces the bandwidth used/load on your network.
0
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

 
meverestCommented:
good point from spguru! :-) - multiple proxy servers ahead of a single application server may be a low cost way to boost performance of a single application without the complexity of a load balanced web app.

I maintain that one proxy <-> one web server is a waste of resources.

Cheers!
0
 
WestezAuthor Commented:
Good stuff guys.  Let me ask you this, you have a single web server that's due to have it's hardware upgraded.  Would you buy a pair of beefy servers and set them up for load balancing?  Or buy one beefy one, and two lesser ones and set them up as proxies?  They serve up dynamic content that include a ton of images to a global audience from a single location.
0
 
meverestCommented:
I would choose the dual load balanced option.

Cheers.
0
 
giltjrCommented:
How much of the content is truly dynamic?  I would assume that the images are really static images.
0
 
ravenplCommented:
Some time ago, I was struggling with dos attack on web server. Various IPs were connecting to the server, and not finishing the request.
Putting squid proxy before the server bumped the dos limit greatly, from hundreds to thousands requests before actual dos.
0
 
sharepointguru14Commented:
Westez, Where will the users be coming from on the majority basis? 3 different sites or more? and where would you put the two proxies?
0
 
WestezAuthor Commented:
meverest - thanks man, I'm just trying to learn something here.  The longest journey begins with a single step.  And it sure helps to follow those who have already been down the path.

giltjr - Let me get back to you on how much of the content is dynamic.  I'll see if I can come up with a percentage.  I know there's a lot of ASP pages, and some .NET and C# that's tied to some SQL db's.

ravenpl -  Are you saying that by putting Squid before the web server helped by limiting the number of requests from thousands to hundreds?  I thought a reverse proxy in front of the web server would stop a dos from happening at all.

spguru14 - We're an academic institution so the sites are educational and used by folks from around the globe.  And we only have one location, so the proxies would be located here in front of the web server.  I'm guessing that your asking if we have multiple locations, similar to a branch office in another city or country that ties back to the home office.
0
 
giltjrCommented:
The reason for my question is that if the majority of the content served up is static, then proxy servers would be a benefit.  If the majority is dynamic, then spend the money on the servers.

Since you have users around the globe, the locating proxies in various places around the world and doing load balancing around the world.  I don't know what your budget is, but there are companies (like Akamai) that will do the proxy function for you.  Of course it does cost money and I have no clue how much.

A reverse proxy will lessen the possibility of a DOS, it does not remove it.
0
 
ravenplCommented:
> I thought a reverse proxy in front of the web server would stop a dos from happening at all.
Eventually the proxy can be dos-ed as well. Isn't it?
0
 
sharepointguru14Commented:
Dynamic content, single hosted location, and the visitors to the site are from all over the map.....spend the money beefing up the servers
0
 
WestezAuthor Commented:
ravenpl - >>Eventually the proxy can be dos-ed as well. Isn't it?

I wasn't sure, so hence the question.  Thanks to all for schooling me.
While we're on  the subject of dos.  Is it possible to protect your sites from such attacks?  I've just read about North Korea being a suspect in taking down several of our governments sites.  I figure the folks protecting those sites know far more than I, and they got taken down.

Regarding the servers, thanks for the advice, we'll get a couple of beefy ones and set them up with load balancing.  I've been searching through EE on the topic of load balancing, and have read that NLB is built in to Windows 2003, so I'm guessing that it's also included in Windows 2008 64 bit which is what we'll be installing on the new servers.
0
 
giltjrCommented:
You really can't protect yourself from a DOS.  No matter what you do, there will be some limitation to the "capacity" you have and one of the possible DOS's is to make more requests that you can handle.

NLB is there on Windows 2008.
0
 
WestezAuthor Commented:
Guys I'm going to close this one out.  Many thanks to all of you for taking the time to reply.  Hopefully some others will benefit from this thread.

Cheers
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 4
  • 4
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now