What is the difference between architecture and infrastructure in software?
Asked Answered
E

2

28

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?

Ecumenicity answered 25/3, 2014 at 23:26 Comment(1)
G
37

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.

Grandsire answered 25/3, 2014 at 23:52 Comment(1)
We can say that infrastructure is the assets and architecture is the design to use those assets.Dom
U
7

@MooseBoys provides a good summary, however for those looking for a little more detail and examples:

Infrastructure vs architecture in computer science

Classification: CIS/IST

Computer Science (CS), Computer Information Science (CIS), Information Technology (IT), Information Systems/Services & Technology (IST)

Definitions of the infrastructure and architecture

Infrastructure

Describes the actual set of components that make up a system.

Architecture

Describes the design of the components and their relationships.

Explanation of use cases

Infrastructure

Typically, an enterprise IT implementation is built on a Infrastructure.

Architecture

IT infrastructures' architecture first necessitates IT agility, providing decisions to subsequently explain the infrastructure components' relationships, agility, lifecycle events and more to provide automations, workflows, agility and relationships of each part of the infrastructure.

IT agility

"IT agility" also known as "infrastructure agility," is an extremely important measurement when designing the IT architecture to focus efforts of how efficiently the IT infrastructure may respond to stimuli, while providing an ability to scale the IT Infrastructure in line with the demands of the business, rapidly.

Using infrastructure and architecture in a sentence

Infrastructure

  • Many multiplayer game applications' backend provides a client-server infrastructure.
  • "We provide core infrastructure technology services to the campus." — (source)
  • "A hybrid cloud approach could involve a public cloud environment and a private cloud environment with infrastructure (facilitated by application programming interfaces, middleware, or containers) facilitating workload portability." — (source)

Architecture

  • Many multiplayer game applications' backend use a client-server architecture.
  • "This portability is facilitated by microservices, an architectural approach to writing software where applications are broken down into their smallest components, independent from each other." (source)
  • "In order for a microservices architecture to work as a functional cloud application, services must constantly request data from each other through messaging. Building a service mesh layer into an application simplifies interservice communication, but a microservices architecture may also need to integrate with your legacy applications and other data sources." — (source)
Ushaushant answered 18/7, 2021 at 16:46 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.