System Design - Part 1: Components
System Design

System Design - Part 1: Components

Components as Basic Building Blocks of a System

Components are fundamental units within a system, categorised into two types:

  1. Logical Entities
  2. Tangible Entities

Categorised Entities

Data Storage and Management

Every system relies on data. This data is stored and managed using databases, which serve as the core technology enabling data storage and accessibility. Users interact with databases through operations like reading, writing, fetching, and storing information. The communication between applications and databases occurs through various layers, primarily the application layer.

Application Layer

Applications represent services that users interact with, such as mobile apps, desktop applications, or websites. These applications serve as logical entities that provide access to the system's functionalities. The interaction between applications and databases involves communication protocols such as HTTP, TCP/IP, and others, facilitating data exchange and system operation.

Communication Protocols

Communication protocols are logical entities that enable inter-machine communication within a system. Applications and services communicate using protocols like HTTP, TCP, IP, etc., and interact on a software level through components such as APIs and RPCs.

Presentation Layer

Some systems include a presentation layer that users directly interact with, such as mobile apps, desktop apps, or web applications. These interfaces provide the user-facing aspect of the system, enabling interaction and engagement. Systems designed without a presentation layer may include specialized applications like logging systems that focus solely on data collection without user interaction.

Infrastructure

The physical environment where all system components operate and interact is known as infrastructure. Cloud providers like AWS, GCP, or Azure offer these instances where applications, databases, and other system components are deployed and hosted.

Overview of the System

The system comprises several interconnected components:

  • Presentation Layer: User interfaces (desktop, mobile, web) enabling user interaction.
  • Application Layer: Services facilitating system functionalities and interacting with databases.
  • Data Storage: Managed by databases (e.g., MongoDB, MySQL) for storing and retrieving information.
  • Inter-component Communication: Facilitated by protocols such as APIs, RPCs, and messaging.
  • Infrastructure: Physical and virtual instances provided by cloud services (e.g., AWS, GCP, Azure) where the system components operate and communicate.

By structuring the system with these components, including robust security mechanisms and protocols, the system operates securely and efficiently, minimizing vulnerabilities and ensuring reliable performance across its infrastructure.

要查看或添加评论,请登录

Mangesh Bulkar的更多文章

  • Web Services

    Web Services

    Web services, use of it. Web services are software systems designed to support interoperable machine-to-machine…

  • AngularJS

    AngularJS

    AngularJS is an open-source web application framework maintained by Google and a community of individual developers and…

  • Understanding SOAP and REST Basics And Differences

    Understanding SOAP and REST Basics And Differences

    Simple Object Access Protocol (SOAP) and Representational State Transfer (REST) are two answers to the same question:…

  • Why REST API so popular?

    Why REST API so popular?

    When you move to the Web for your applications, you're also moving your APIs from behind the firewall to the wilds of…

    1 条评论
  • The Difference Between Static and Dynamic Websites?

    The Difference Between Static and Dynamic Websites?

    Whether you’ve come across these terms online or have heard it thrown around by your web designer, it is important to…

    11 条评论
  • Why is PHP so popular?

    Why is PHP so popular?

    If you have ever been on the Facebook Web site, or on Wikipedia, or any of the millions of WordPress-powered blogs, you…

社区洞察

其他会员也浏览了