By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,364 Members | 1,278 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,364 IT Pros & Developers. It's quick & easy.

Inter Component interaction

P: n/a
Hi,

I am about to start developing an n-tier system. And was hoping to get an
insight into the best ways of doing this.
Inparticular, I want to know how I can develop classes/component to be
deployed on different servers which will interact with eachother. What is
the best mode of interaction? i.e. remoting or web services or other? If I
go ahead and deploy the layers on separate servers am I right in thinking
that scalability will increase but speed will depreciate?

Regards,
Richard
Jul 21 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
Hi david,

At the moment I am weighing up the ads/disads of passing Datasets. As I
havent undertaken this kind of interaction b4 I was wondering how I can get
the two to communicate - Remoting , Web services or other?

I anticipate that I will use windows integrated security.
No Firewall - but what would I have to do if there was one?

cheers
Richard

"David Williams" <Da***********@discussions.microsoft.com> wrote in message
news:59**********************************@microsof t.com...
This is a failly hard question to answer. What kind of data will you be passing back and forth? Will you be crossing a firewall? What kind of
security do you require? And I am sure that I missed a number of other
issues that need to be resolved before the question can truely be answered.
Oh, and yes, there will be a preformance hit of some kind. However, depending on the hardware and communication setup due to scaling reasons,
you may see an increase in preformance. Hard to tell.
HTH
--
David Williams, VB.NET MVP
"richard" wrote:
Hi,

I am about to start developing an n-tier system. And was hoping to get an insight into the best ways of doing this.
Inparticular, I want to know how I can develop classes/component to be
deployed on different servers which will interact with eachother. What is the best mode of interaction? i.e. remoting or web services or other? If I go ahead and deploy the layers on separate servers am I right in thinking that scalability will increase but speed will depreciate?

Regards,
Richard

Jul 21 '05 #2

P: n/a
Ok, let's see.

Remoting is good if your are sure that you will be on the same side of a
firewall. If a firewall is in place, then you have to either a) punch
holes in the firewall to allow the data to pass back and forth
(Sometimes quite hard to do, depending on your [or your clients] IT
department) or b) use ports that are already open for your use.
(Normally not a good idea as these are defined for other usage - IE
browsing the web.) Remoting does not require IIS installed on the
server.

Web Services are good if you are behind a firewall. Uses XML normally
wrapped in SOAP for transport. Requires IIS on the server. I believe
that they (Web Services) run under the ASPNET user, and if that is so,
then there is a number of security issues that may have to be solved to
allow file system access if that is needed.

Other means that I have used or looked at include MSMQ (message queues).
Very good if you need to insure that the data gets there, regardless
of network failures. Typically you will not want to pass a lot of data
in either direction when using MSMQ. Can be hard to set up correctly.
Does require (for the normal programmer) a slightly different approach
to the way you design your application to get the full benefits from,
but can handle hugely scalable systems when done correctly. In my
opinion is the most robust means of interprocess communications, but not
one that I use regularly due to the overhead and prelim design
requirements.

Datasets can be used if you are not carrying a lot of data. You do not
normally want to push huge amounts of data over the network for
performance reasons. Datasets are nice as they are a pre-defined
object, and often have the functionally that one wants built in.
However, in a lot of cases, they are overkill. There is a fair amount
of processing required to use Datasets. If the application(s) do not
already use them, they can add more burden than they relieve.
HTH

David

"richard" <ri******@cisco.com> wrote in message
news:Ot**************@TK2MSFTNGP09.phx.gbl:
Hi david,

At the moment I am weighing up the ads/disads of passing Datasets. As I
havent undertaken this kind of interaction b4 I was wondering how I can
get
the two to communicate - Remoting , Web services or other?

I anticipate that I will use windows integrated security.
No Firewall - but what would I have to do if there was one?

cheers
Richard

"David Williams" <Da***********@discussions.microsoft.com> wrote in
message
news:59**********************************@microsof t.com...
This is a failly hard question to answer. What kind of data will you
be

passing back and forth? Will you be crossing a firewall? What kind of
security do you require? And I am sure that I missed a number of other
issues that need to be resolved before the question can truely be
answered.

Oh, and yes, there will be a preformance hit of some kind. However,

depending on the hardware and communication setup due to scaling
reasons,
you may see an increase in preformance. Hard to tell.

HTH
--
David Williams, VB.NET MVP
"richard" wrote:
Hi,

I am about to start developing an n-tier system. And was hoping to
get an insight into the best ways of doing this.
Inparticular, I want to know how I can develop classes/component to
be
deployed on different servers which will interact with eachother.
What is the best mode of interaction? i.e. remoting or web services or other?
If I go ahead and deploy the layers on separate servers am I right in thinking that scalability will increase but speed will depreciate?

Regards,
Richard


Jul 21 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.