server infrastructure

  • Thread starter Thread starter Jason Shohet
  • Start date Start date
J

Jason Shohet

Lets say I have all my web services in a separate project in VS.NET. And by
referencing them in a particular web application, the dll's get
automatically put into the bin directory. I know that some people split the
web services off onto a separate box. How is this best done -- I mean, the
dll's are in the bin directory automatically. If I delete them, how is the
web application going to know to look for them on another box.
Also, if I have a server farm of 3 IIS boxes, and then create a 4th IIS box
for the web services, am I buying anything in terms of performance, since
anyways the 3 are going thru the bottleneck of 1 component server (web
services) box, in order to hit the database. I guess I'm just wondering
what the tradeoffs are, and what the best practice is.

TY







So, I create the web services as a separate project - a separate web site?
I assume I would add a 'web reference' instead of a regular reference, to
the web service, or how do I tell the application where to find it. I'm
guessing when you add reference to the web service, thats what web reference
is for?

Also doesn't this slow down your application, using a web reference vs
having the dll proxy represent the web service, right in the bin directory
of the local app. Or, (assuming the LAN is extremely fast), the
web-reference to a web service on a separate box is not really a performance
issue.
 
Jason Shohet said:
Lets say I have all my web services in a separate project in VS.NET. And by
referencing them in a particular web application, the dll's get
automatically put into the bin directory.

You are not supposed to reference the web services directly through project
or file references. Instead, you should create a Web Reference. When you do
this in VS.NET, it adds a web service proxy to your web application project.
In the web application you access the web service using the proxy class. The
web service DLLs will not get copied.
I know that some people split the
web services off onto a separate box. How is this best done -- I mean, the
dll's are in the bin directory automatically.

No they should not be there. See my previous comment.

[snip]
So, I create the web services as a separate project - a separate web site?
I assume I would add a 'web reference' instead of a regular reference, to
the web service, or how do I tell the application where to find it. I'm
guessing when you add reference to the web service, thats what web reference
is for?

Yes, exactly.
Also doesn't this slow down your application, using a web reference vs
having the dll proxy represent the web service, right in the bin directory
of the local app. Or, (assuming the LAN is extremely fast), the
web-reference to a web service on a separate box is not really a performance
issue.

Yes it does slow down your application. Web services are not meant for
situations where you need to squeeze every nanosecond out of the code. They
are meant for situations where you need scalability and interoperability,
among other things. If you want speed, put the logic code in a separate
library project and reference it directly from your web application.

Sami
www.capehill.net
 
Back
Top