HighTechTalks DotNet Forums  

Remote GAC Server

Dotnet Distributed Applications microsoft.public.dotnet.distributed_apps


Discuss Remote GAC Server in the Dotnet Distributed Applications forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
Softwaremaker
 
Posts: n/a

Default Remote GAC Server - 07-02-2003 , 11:10 AM






Hi Fellow developers,

Juz wondering if there is a remote Global Assembly Cache (GAC) Middle-Tier
Server that acts just like a COM+ Server. Only things is its serving .NET
Assemblies instead of COM Components. How do you deploy that GAC Server, if
there is ?

I have a web farm that runs 7 IIS Web Servers and each Web Server houses 3
applications that shares a common set of .NET Assemblies. Instead of having
all these assemblies in each GAC which means 7 GACs together, I would like a
middle-tier layer to house all these .NET Assemblies Business Logic

Please revert any advice.

Thank You Very Much.

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++



Reply With Quote
  #2  
Old   
Rockford Lhotka
 
Posts: n/a

Default Re: Remote GAC Server - 07-03-2003 , 10:30 AM






The first question I always ask when the GAC comes up is whether you really
need it. There are costs and benefits to the GAC, and in most cases the
costs outweigh the benefits in my mind. Here are some thoughts on the topic

http://www.lhotka.net/Articles.aspx?...4-486e03ccb495

But what you are proposing in your post has less to do with the GAC than it
has to do with the potential benefits (and costs) of introducing an
application server into your environment.

Adding physical tiers to an application reduces performance - often by as
much as 50% - due to the extra network hop required for any request. This is
a pretty high price to pay in most cases.

The question you need to ask yourself is whether it is worth upwards of a
50% performance hit to simplify the management of these shared DLLs. If it
is worth it, then you're all set. Most people over the past several years
have discovered that the performance hit is too high and they've come up
with other ways to manage the deployment and update of the DLLs to their
servers.

If you do _not_ use the GAC, you can use xcopy deployment or ftp to easily
update your web applications with updated versions of the DLLs. If you use
the GAC then you're kind of stuck since deployment requires registration, so
you're best bet is probably an msi file or a custom install script that runs
on each server.

Rocky
--
Rockford Lhotka
Author of 'Expert One-on-One Visual Basic.NET Business Objects'
rocky (AT) lhotka (DOT) net http://www.lhotka.net

"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote

Quote:
Hi Fellow developers,

Juz wondering if there is a remote Global Assembly Cache (GAC) Middle-Tier
Server that acts just like a COM+ Server. Only things is its serving .NET
Assemblies instead of COM Components. How do you deploy that GAC Server,
if
there is ?

I have a web farm that runs 7 IIS Web Servers and each Web Server houses 3
applications that shares a common set of .NET Assemblies. Instead of
having
all these assemblies in each GAC which means 7 GACs together, I would like
a
middle-tier layer to house all these .NET Assemblies Business Logic

Please revert any advice.

Thank You Very Much.

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++





Reply With Quote
  #3  
Old   
Softwaremaker
 
Posts: n/a

Default Re: Remote GAC Server - 07-03-2003 , 08:23 PM



Hi,

Thank you for your interesting thoughts and comments. I am evaluating all
options and your suggestion is something I will seriously consider.

However, my point is that, is there such a thing as a .NET GAC App Server ?
Is this a COM+ Server ? and if there is, how do I deploy it and how does
communction between the application-tier and the logic-tier takes place ?
Thru DCOM ? Remoting ? How does it happen ?

Any advise is greatly appreciated.

Thank You.

Willie

"Rockford Lhotka" <rockyNOSPAM (AT) NOSPAMlhotka (DOT) net> wrote

Quote:
The first question I always ask when the GAC comes up is whether you
really
need it. There are costs and benefits to the GAC, and in most cases the
costs outweigh the benefits in my mind. Here are some thoughts on the
topic


http://www.lhotka.net/Articles.aspx?...4-486e03ccb495

But what you are proposing in your post has less to do with the GAC than
it
has to do with the potential benefits (and costs) of introducing an
application server into your environment.

Adding physical tiers to an application reduces performance - often by as
much as 50% - due to the extra network hop required for any request. This
is
a pretty high price to pay in most cases.

The question you need to ask yourself is whether it is worth upwards of a
50% performance hit to simplify the management of these shared DLLs. If it
is worth it, then you're all set. Most people over the past several years
have discovered that the performance hit is too high and they've come up
with other ways to manage the deployment and update of the DLLs to their
servers.

If you do _not_ use the GAC, you can use xcopy deployment or ftp to easily
update your web applications with updated versions of the DLLs. If you use
the GAC then you're kind of stuck since deployment requires registration,
so
you're best bet is probably an msi file or a custom install script that
runs
on each server.

Rocky
--
Rockford Lhotka
Author of 'Expert One-on-One Visual Basic.NET Business Objects'
rocky (AT) lhotka (DOT) net http://www.lhotka.net

"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote in message
news:eADBUwKQDHA.2424 (AT) tk2msftngp13 (DOT) phx.gbl...
Hi Fellow developers,

Juz wondering if there is a remote Global Assembly Cache (GAC)
Middle-Tier
Server that acts just like a COM+ Server. Only things is its serving
..NET
Assemblies instead of COM Components. How do you deploy that GAC Server,
if
there is ?

I have a web farm that runs 7 IIS Web Servers and each Web Server houses
3
applications that shares a common set of .NET Assemblies. Instead of
having
all these assemblies in each GAC which means 7 GACs together, I would
like
a
middle-tier layer to house all these .NET Assemblies Business Logic

Please revert any advice.

Thank You Very Much.

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++







Reply With Quote
  #4  
Old   
Softwaremaker
 
Posts: n/a

Default Re: Remote GAC Server - 07-04-2003 , 10:19 PM



Thank you, Santiago.

+++++++++++++++++
"Santiago" <replytonewsgroup> wrote

Quote:
I agree with Rockford, unless you need the GAC you're better off without
it.
To me, using the GAC is almost like going back to the problems we had with
ActiveX. I'd rather keep everything private in my apps folder.

But more to the point of your question:
To communicate with your remote server the .NET way, you would use
remoting
or Web Services. Your App Server itself can be either IIS where you host
your remote DLLs or your own app (see a sample at:
http://www.csharpfriends.com/Article...x?articleID=62) that
acts as a remoting server.

I believe the above remoting sample will answer most of your questions.

Lastly, if you need some of the COM+ functionality that remoting does not
offer, you can work with COM+ also. But here you are using interop between
ActiveX and .NET and extra overhead is incurred.

Deployment?
1) Install .NET on the server.
2) xcopy your server DLLs.
3) Start your remoting server or IIS.

4) Install .NET on the clients.
5) xcopy the interfaces to your server DLLs onto these client machines.
6) client will connect to the server via remoting (using a config file to
get the host and port).

"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote in message
news:%23SCiwJcQDHA.2176 (AT) TK2MSFTNGP12 (DOT) phx.gbl...
Hi,

Thank you for your interesting thoughts and comments. I am evaluating
all
options and your suggestion is something I will seriously consider.

However, my point is that, is there such a thing as a .NET GAC App
Server
?
Is this a COM+ Server ? and if there is, how do I deploy it and how does
communction between the application-tier and the logic-tier takes place
?
Thru DCOM ? Remoting ? How does it happen ?

Any advise is greatly appreciated.

Thank You.

Willie

"Rockford Lhotka" <rockyNOSPAM (AT) NOSPAMlhotka (DOT) net> wrote in message
news:#IXgR8WQDHA.1712 (AT) TK2MSFTNGP12 (DOT) phx.gbl...
The first question I always ask when the GAC comes up is whether you
really
need it. There are costs and benefits to the GAC, and in most cases
the
costs outweigh the benefits in my mind. Here are some thoughts on the
topic




http://www.lhotka.net/Articles.aspx?...4-486e03ccb495

But what you are proposing in your post has less to do with the GAC
than
it
has to do with the potential benefits (and costs) of introducing an
application server into your environment.

Adding physical tiers to an application reduces performance - often by
as
much as 50% - due to the extra network hop required for any request.
This
is
a pretty high price to pay in most cases.

The question you need to ask yourself is whether it is worth upwards
of
a
50% performance hit to simplify the management of these shared DLLs.
If
it
is worth it, then you're all set. Most people over the past several
years
have discovered that the performance hit is too high and they've come
up
with other ways to manage the deployment and update of the DLLs to
their
servers.

If you do _not_ use the GAC, you can use xcopy deployment or ftp to
easily
update your web applications with updated versions of the DLLs. If you
use
the GAC then you're kind of stuck since deployment requires
registration,
so
you're best bet is probably an msi file or a custom install script
that
runs
on each server.

Rocky
--
Rockford Lhotka
Author of 'Expert One-on-One Visual Basic.NET Business Objects'
rocky (AT) lhotka (DOT) net http://www.lhotka.net

"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote in message
news:eADBUwKQDHA.2424 (AT) tk2msftngp13 (DOT) phx.gbl...
Hi Fellow developers,

Juz wondering if there is a remote Global Assembly Cache (GAC)
Middle-Tier
Server that acts just like a COM+ Server. Only things is its serving
.NET
Assemblies instead of COM Components. How do you deploy that GAC
Server,
if
there is ?

I have a web farm that runs 7 IIS Web Servers and each Web Server
houses
3
applications that shares a common set of .NET Assemblies. Instead of
having
all these assemblies in each GAC which means 7 GACs together, I
would
like
a
middle-tier layer to house all these .NET Assemblies Business Logic

Please revert any advice.

Thank You Very Much.

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++











Reply With Quote
  #5  
Old   
Rockford Lhotka
 
Posts: n/a

Default Re: Remote GAC Server - 07-05-2003 , 12:18 PM



A .NET application server is a host for assemblies that are usable by client
workstations or client servers. There are several ways to create a .NET app
server.

1) use web services - host them in IIS/ASP.NET and call them from clients

2) use remoting hosted in IIS/ASP.NET to expose .NET assemblies to clients

3) use remoting hosted in a custom host (typically a Windows Service) to
expose .NET assemblies to clients

Remoting is faster and more powerful than web services, but doesn't offer
the cross-platform interop of web services.

With the classic definitiion of an application server typically hosts
components as one tier in an n-tier application, so interoperability in such
a case is pretty meaningless. This means that if the assemblies on your
application server are part of a larger application and are not an
application all by themselves then remoting is probably your best bet.

However, if you are trying to create an application server that simply hosts
a self-contained application and exposes its functionality to the rest of
your organization then web services are the best bet. The scenario here is
NOT a classic application server that is merely another tier in an n-tier
application.

If you opt for remoting, the easiest approach is to go with #2 above - host
the assemblies in IIS. Ingo Rammer's 'Advanced .NET Remoting' books are a
good resource. You can also find some information on remoting and web
services on MSDN - including here:

http://msdn.microsoft.com/library/en...et10232001.asp

And you can find some information on the creation of an applicaiton server
with remoting here:

http://msdn.microsoft.com/library/en...et05272003.asp

Rocky
--
Rockford Lhotka
Author of 'Expert One-on-One Visual Basic.NET Business Objects'
rocky (AT) lhotka (DOT) net http://www.lhotka.net


"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote

Quote:
Hi,

Thank you for your interesting thoughts and comments. I am evaluating all
options and your suggestion is something I will seriously consider.

However, my point is that, is there such a thing as a .NET GAC App Server
?
Is this a COM+ Server ? and if there is, how do I deploy it and how does
communction between the application-tier and the logic-tier takes place ?
Thru DCOM ? Remoting ? How does it happen ?

Any advise is greatly appreciated.

Thank You.

Willie

"Rockford Lhotka" <rockyNOSPAM (AT) NOSPAMlhotka (DOT) net> wrote in message
news:#IXgR8WQDHA.1712 (AT) TK2MSFTNGP12 (DOT) phx.gbl...
The first question I always ask when the GAC comes up is whether you
really
need it. There are costs and benefits to the GAC, and in most cases the
costs outweigh the benefits in my mind. Here are some thoughts on the
topic



http://www.lhotka.net/Articles.aspx?...4-486e03ccb495

But what you are proposing in your post has less to do with the GAC than
it
has to do with the potential benefits (and costs) of introducing an
application server into your environment.

Adding physical tiers to an application reduces performance - often by
as
much as 50% - due to the extra network hop required for any request.
This
is
a pretty high price to pay in most cases.

The question you need to ask yourself is whether it is worth upwards of
a
50% performance hit to simplify the management of these shared DLLs. If
it
is worth it, then you're all set. Most people over the past several
years
have discovered that the performance hit is too high and they've come up
with other ways to manage the deployment and update of the DLLs to their
servers.

If you do _not_ use the GAC, you can use xcopy deployment or ftp to
easily
update your web applications with updated versions of the DLLs. If you
use
the GAC then you're kind of stuck since deployment requires
registration,
so
you're best bet is probably an msi file or a custom install script that
runs
on each server.

Rocky
--
Rockford Lhotka
Author of 'Expert One-on-One Visual Basic.NET Business Objects'
rocky (AT) lhotka (DOT) net http://www.lhotka.net

"Softwaremaker" <msdn (AT) removethis (DOT) softwaremaker.net> wrote in message
news:eADBUwKQDHA.2424 (AT) tk2msftngp13 (DOT) phx.gbl...
Hi Fellow developers,

Juz wondering if there is a remote Global Assembly Cache (GAC)
Middle-Tier
Server that acts just like a COM+ Server. Only things is its serving
.NET
Assemblies instead of COM Components. How do you deploy that GAC
Server,
if
there is ?

I have a web farm that runs 7 IIS Web Servers and each Web Server
houses
3
applications that shares a common set of .NET Assemblies. Instead of
having
all these assemblies in each GAC which means 7 GACs together, I would
like
a
middle-tier layer to house all these .NET Assemblies Business Logic

Please revert any advice.

Thank You Very Much.

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++









Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.