architectureterminologyinfrastructure

What is the difference between architecture and infrastructure in software?


I just posted a question asking the difference between MapR and Cloudera's architecture and used "architecture" and "infrastructure" interchangeably. Is this appropriate?

To put this in context, MapR and Cloudera are distributions of Hadoop. They each contain various daemons that interact with each other in various ways. When I refer to infrastructure/architecture, I am referring to the daemons, their actions, and the relationships between the daemons.

What is the correct word I am looking for - architecture or infrastructure?

What is the difference between the two?


Solution

  • Infrastructure describes the actual set of components that make up a system, while architecture describes the design of the components and their relationships. In a nutshell, a system is built on an infrastructure that has a particular architecture.

    For example:

    Many multiplayer game backends provide a client-server infrastructure.

    Many multiplayer game backends use a client-server architecture.