473,405 Members | 2,141 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

COM+ with C# Client as well as C# ServicedComponent......

[SUMMARY]:

This is general query seeking opinions about COM+ Development wherein
Server [COM+ Components] is developed in C# [as ServicedComponent] and
Client accessing that across machines is also C#.

Wish to seek experienced words on issues of COM-.NET interop that is
playing major decisive role on both sides and is making decisions
complicated only based upon theory.

[IN DETAIL]:

We wish to develop numerious components for our middle tier in typical
3-tier application.

As our proposal for the Client layer is C# .NET, and due to in-general
assessment that developing and deploying the COM+ ServicedComponents
shall be faster than developing as C++ ATL based COM+ components, we
have decided to develop them in C#, as ServicedComponents.

As our clients applications shall be in C#, we believe that the
proxies that it shall be using [created out of the C#
ServicedComponents installed on Server machine] shall be also in C#
[i.e. MSIL, I guess]. Thus the client side shall also involve COM-.NET
interop as the call shall be propaged to COM+ Server on other end via
DCOM.

Considering the fact that the both of the ends are involving COM-.NET
interop in either direction, we have some concerns-cum-queries, and
kindly let us know your experienced words.

Queries:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?
2> As our clients are not browsers [but only UI applications], we feel
that replacing the COM+ Components by We b Services shall not be a
practicble proposition. This is becasue we feel that making a HTTP
request to Web Service shall involve additional overhead of opening a
socket connection to the Server, creating the request programmtically
before making one. Are we thinking on correct lines?
3> Can you suggest an alternative [if any] approach for technology
selections [MS only] on both Server and Client ends of these client
and middle tier, so that we can fetch the best of both .NET and COM+
worlds?

Thanks for your time.
- Kedar Agarkar
Nov 15 '05 #1
5 5110
Kedar,

See inline.

"Kedar Agarkar" <id*******@math.net> wrote in message
news:6e**************************@posting.google.c om...
[SUMMARY]:

This is general query seeking opinions about COM+ Development wherein
Server [COM+ Components] is developed in C# [as ServicedComponent] and
Client accessing that across machines is also C#.

Wish to seek experienced words on issues of COM-.NET interop that is
playing major decisive role on both sides and is making decisions
complicated only based upon theory.

[IN DETAIL]:

We wish to develop numerious components for our middle tier in typical
3-tier application.

As our proposal for the Client layer is C# .NET, and due to in-general
assessment that developing and deploying the COM+ ServicedComponents
shall be faster than developing as C++ ATL based COM+ components, we
have decided to develop them in C#, as ServicedComponents.
Good choice. =)

As our clients applications shall be in C#, we believe that the
proxies that it shall be using [created out of the C#
ServicedComponents installed on Server machine] shall be also in C#
[i.e. MSIL, I guess]. Thus the client side shall also involve COM-.NET
interop as the call shall be propaged to COM+ Server on other end via
DCOM.
This is true, however, if you are using a pure .NET solution, then I
would not use this option. Rather, I would expose the objects from the
server machine through remoting (if it suits you, there is no security with
remoting right now). The components would be serviced components residing
on a server machine, you just use a different mechanism to call them. If
you need the secure channel that DCOM provides, then yes, you will have to
use a proxy and COM interop.

Considering the fact that the both of the ends are involving COM-.NET
interop in either direction, we have some concerns-cum-queries, and
kindly let us know your experienced words.

Queries:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?
Yes. You are going to incur some overhead with this kind of distributed
architecture anyways. I would recommend using remoting over the COM+
proxies. If you use remoting, then there is no COM interop, not on the
client, and not on the server either.
2> As our clients are not browsers [but only UI applications], we feel
that replacing the COM+ Components by We b Services shall not be a
practicble proposition. This is becasue we feel that making a HTTP
request to Web Service shall involve additional overhead of opening a
socket connection to the Server, creating the request programmtically
before making one. Are we thinking on correct lines?
What's the difference between creating a socket to speak with a web
server and creating a socket to speak with a machine that is holding COM+
components? If you have two separate machines and you need them to
communicate, then you will always have to establish a connection of some
kind and then package the request to be sent across the wire. Web Services
are just a different way of doing that. Depending on your application, it
might be a viable option.
3> Can you suggest an alternative [if any] approach for technology
selections [MS only] on both Server and Client ends of these client
and middle tier, so that we can fetch the best of both .NET and COM+
worlds?
Remoting or web services (I prefer remoting).

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- ni**************@exisconsulting.com

Thanks for your time.
- Kedar Agarkar

Nov 15 '05 #2
Nicholas Paldino [.NET/C# MVP] wrote:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?
Yes. You are going to incur some overhead with this kind of
distributed architecture anyways. I would recommend using remoting
over the COM+ proxies. If you use remoting, then there is no COM
interop, not on the client, and not on the server either.


Hm? Are you sure? I bet all the COM+ interception stuff on the server side
is still using interop.

What's the difference between creating a socket to speak with a
web server and creating a socket to speak with a machine that is
holding COM+ components? If you have two separate machines and you
need them to communicate, then you will always have to establish a
connection of some kind and then package the request to be sent
across the wire. Web Services are just a different way of doing
that. Depending on your application, it might be a viable option.


The diff is, that RPC is very compact compared to http and even more to WS.

Nov 15 '05 #3
Kedar Agarkar wrote:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?
Yes. Compared to all the other things which happen (network latency,
database, file i/o, ...) this overhead is nothing.
Have you load tested your scenarios? Do they meet your needs? If so, fine.
If not, reconsider.
2> As our clients are not browsers [but only UI applications], we feel
that replacing the COM+ Components by We b Services shall not be a
practicble proposition.
WS have not very much to do with browsers.
This is becasue we feel that making a HTTP
request to Web Service shall involve additional overhead of opening a
socket connection to the Server, creating the request programmtically
before making one. Are we thinking on correct lines?
See above about http overhead. Yes, it needs more than RPC, but does it
matter?
WS are more for B2B, not intranet.
3> Can you suggest an alternative [if any] approach for technology
selections [MS only] on both Server and Client ends of these client
and middle tier, so that we can fetch the best of both .NET and COM+
worlds?


To achieve what?
Nov 15 '05 #4
Thanks Nicoles and Stephen...........both of you for contributing
valuable comments. Having developed Real-Time Middleware on my own and
comparing that with .NET Remoting details, I was feeling a bit
precarious with this option.

I shall have some more study and post again to you and this
newsgroups, this is our very pre-starting phase of a project.

Thanks again for your valuable time.

- Kedar Agarkar
"Steffen Ramlow" <s.******@gmx.net> wrote in message news:<OF**************@TK2MSFTNGP09.phx.gbl>...
Kedar Agarkar wrote:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?


Yes. Compared to all the other things which happen (network latency,
database, file i/o, ...) this overhead is nothing.
Have you load tested your scenarios? Do they meet your needs? If so, fine.
If not, reconsider.
2> As our clients are not browsers [but only UI applications], we feel
that replacing the COM+ Components by We b Services shall not be a
practicble proposition.


WS have not very much to do with browsers.
This is becasue we feel that making a HTTP
request to Web Service shall involve additional overhead of opening a
socket connection to the Server, creating the request programmtically
before making one. Are we thinking on correct lines?


See above about http overhead. Yes, it needs more than RPC, but does it
matter?
WS are more for B2B, not intranet.
3> Can you suggest an alternative [if any] approach for technology
selections [MS only] on both Server and Client ends of these client
and middle tier, so that we can fetch the best of both .NET and COM+
worlds?


To achieve what?

Nov 15 '05 #5
Thanks Nicoles and Stephen...........both of you for contributing
valuable comments. Having developed Real-Time Middleware on my own and
comparing that with .NET Remoting details, I was feeling a bit
precarious with this option.

I shall have some more study and post again to you and this
newsgroups, this is our very pre-starting phase of a project.

Thanks again for your valuable time.

- Kedar Agarkar
"Steffen Ramlow" <s.******@gmx.net> wrote in message news:<OF**************@TK2MSFTNGP09.phx.gbl>...
Kedar Agarkar wrote:
1> Is it pragmatic to use such a deployment [as explained above] that
shall involve overhead of COM-.NET interop on both sides?


Yes. Compared to all the other things which happen (network latency,
database, file i/o, ...) this overhead is nothing.
Have you load tested your scenarios? Do they meet your needs? If so, fine.
If not, reconsider.
2> As our clients are not browsers [but only UI applications], we feel
that replacing the COM+ Components by We b Services shall not be a
practicble proposition.


WS have not very much to do with browsers.
This is becasue we feel that making a HTTP
request to Web Service shall involve additional overhead of opening a
socket connection to the Server, creating the request programmtically
before making one. Are we thinking on correct lines?


See above about http overhead. Yes, it needs more than RPC, but does it
matter?
WS are more for B2B, not intranet.
3> Can you suggest an alternative [if any] approach for technology
selections [MS only] on both Server and Client ends of these client
and middle tier, so that we can fetch the best of both .NET and COM+
worlds?


To achieve what?

Nov 15 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Angelos Karantzalis | last post by:
Hi y'all ... I'm a bit puzzled here about .NET class instancing under COM+ Issue 1: I've a COM+ component, let's call it ... COMDbWrapper that initializes itself from an xml file. The data...
5
by: Duane Pressley | last post by:
I'm looking for someone to help me make sense of the results I'm observing when using the ThreadPool class in a COM-Interop scenario. Here's the set up: 1.. A classic ASP page instantiates and calls...
26
by: Lasse Edsvik | last post by:
Hello I'm trying to build a simple COM+ app in vs.net using C# and i cant register it in component manager..... what more is needed than this: using System; using...
1
by: Raffe | last post by:
Hi all! I've been playing a bit with Component Designer in Visual Studio.NET. Seems to me like a great way to build simple data access components using "point and click". However I can't figure...
2
by: VinDotNet | last post by:
Here's the Scenario I am facing: I've got a winform managed c++ client which connects to my managed COM+ server application (by making createinstance, then typecasting the object to an interface,...
1
by: Soeren S. Joergensen | last post by:
Hi, A customer of mine (or actually the security department of this company) requires that SQL connections are handet out from COM+ server object. The connection will be used from a web...
1
by: JohnFol | last post by:
I have a piece of code that I want to use as a library / dll for other s/w developments. For example in VB6 land, 1) I create MyCalculator.DLL 2) In another project I make a reference to...
2
by: shanmani | last post by:
Hi, I am developing a .NET application which will invoke the methods from different COM / .NET DLLs. While invoking methods from .NET DLLs, I am encountering the following error. I have also...
7
by: Slavan | last post by:
I am trying to execute following code: Type type = Type.GetTypeFromProgID("SomeType.SomeClass", true); object helper = Activator.CreateInstance(type); and get following RemotingException (in...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.