views:

108

answers:

2

Can we describe a component-based architecture as a distributed system for an example EJB is a component based architecture as well as it has qualities to become a distributed system? So how can these two concepts combine together, or to differentiate.

Thanks.

A: 

In both cases you divide a system into parts.

The difference in a distributed system is that the it can be called over the wire.

You should have a look at the 4 pillars of service orientated architecture:

http://www.stsc.hill.af.mil/crossTalk/2007/09/0709LewisSmith.html

Shiraz Bhaiji
A: 

"Component-based" means "separation of concerns", whether those are:

  • physical (with tiers, where each "compoents" represent a physical unit of separation/deployment, like a 3-tiers architecture with a web server (1 tier) delivering web pages (another tier) which draws on data from a database the 3rd tiers. See FinnNk's answer for the question 3 Tier Architecture vs 2 Tier Architecture.

  • logical (with layers with components representing responsibilities).

The term component is "generic" enough to be applied to any architecture where you can identify several concerned which can be isolated.

Hence, a distributed system can be viewed as a collection of physical components (the "nodes") or logical components (as for EJB: a server-side "component", here a "model" that encapsulates the "business logic" of an application)

VonC