![]() | |
![]() |
| | Thread Tools | Search this Thread | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
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 +++++++++++++++++++++++++++++ |
#3
| |||
| |||
|
|
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 +++++++++++++++++++++++++++++ |
#4
| |||
| |||
|
|
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 +++++++++++++++++++++++++++++ |
#5
| |||
| |||
|
|
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 +++++++++++++++++++++++++++++ |
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
| |