简体   繁体   中英

Component-based architecture vs. Distributed system

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.

"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)

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM