Middle tier for ASP.NET / Load balance

S

SevDer

Hello All,

For my ASP.NET application, I am trying to have my middle tier (currently
logical layer) dll's to be loaded dynamically.
The aim is not to kill the sessions when I need to update those DLLs. (I
know that, I can stop app recycle when bin, web.config or folder changes)

Ideally, I would like load balance my middle tier dll's from a load balanced
machines.
Now, I am trying to findout which way is the best way to go.

I've heard/tried several things
1. People say to use web services (but it is a bit late for me because of
the current architecture)
2. I tried remoting in the past but did not succeed that much, always high
cost, high maintenance, doesn't work all the time
3. I heard that WCF can do some help to me.

And I have a hardware load balancer which can help in load balancing.

Now, can someone tell me the ultimate way to go in enterprise level? I need
a world class solution but not sure which one to research for and not enough
time.

Thanks in advance.
 
S

sloan

Have your asp.net application "talk to" WCF services, instead of directly to
the BAL.

I would look at Greg Leake's "stocktrader" application if you want easier
deployment of N number of WCF machines.
http://msdn.microsoft.com/en-us/netframework/bb499684.aspx
It is NOT a trivial learning curve, but the benefits are really good.


Here is a starter article:
http://sholliday.spaces.live.com/Blog/cns!A68482B9628A842A!158.entry
If you're only going to have asp.net as a "wcf client", then I would stick
to the "DotNet to DotNet" implementation, as that blog entry discusses.


The code is download-able, and within 5 minutes you can have
TestWCF1.aspx
calling a WCF service.


Caching is trickier on the MiddleTier side. You can (of course) cache on
the WebServer side of things.
 
S

SevDer

Thanks a lot.
I will review and let you know if I have problems.
Also is this the best approach or there are alternatives?

Thanks again.
 
S

sloan

My personal opinion is that you can scale the middle tier, and get by with
alot less webservers.


2 WebServers
6 MiddleTier Machines
1 DB Server

Something like that.

.......

Currrently, I use WCF with named pipes..thus my "WCF Service" actually runs
on the same machine. But I have the logical boundary, and thus I can go to
a physical boundary at any time with some config file changes.

.........

WCF is more abstract than remoting, and has more features and less
headaches.
WCF can expose a WebService endpoint when needed, but you should expose
other end points when you're doing DotNet to DotNet, because there are
better ~performing~~ endpoints than a WebService.
WebService is good for when you need DotNet, Asp, Java, to work with your
app.


But my opinion is that this is a good way to scale.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top