What Is Software Architecture/ Infrastructure:

What Is Software Architecture/ Infrastructure:?

A software architecture or Infrastructure is a collection of servers & services in a physical and logical manner.?To do specific task?

Physical Devices: Hardware of the servers, like CPU, RAM, Hard disks, Routers, firewall devices etc...?

Logical Devices: Service/ set of services running in the Physical box to compute a designated task. ?

Their services/ Server are below?

DB/ Backend server: - A database server is a dedicated server setup to entertain the data requests made from the application server.?

(Oracle, MS SQL, MY SQL, Mango DB etc...) ?

In this server the actual data will stored and maintained?

Code service/ Application server: An application server’s fundamental job is to provide its clients with access to what is commonly called business logic, which generates dynamic content; that is, it’s code that transforms data to provide the specialized functionality offered by a business, service, or application?

(Java, C, C++, Cobol, Python, Pega, .NET) and so on...?

  1. ? Here we write the logic to Fetch/ Update/ Delete the data from Backend ?

  1. Various operations will be performed in DB using the code written and deployed in this service.?

  1. Each programming language will differ, different configurations need to be set up at this server level.? ?

Web server/ frontend server:?

  1. Web servers deliver static content, like HTML pages, images, videos, and files?

  1. ?A web server ‘s fundamental job is to accept and fulfill requests from clients for static content from a website (HTML pages, files, images, video, and so on). ?

  1. The client is almost always a browser or mobile application, and the request takes the form of a Hypertext Transfer Protocol (HTTP) message, as does the web server’s response.?

Below diagram will depict evaluation of architectures?

?

?

Types of Architectures:?

?

  • Model-View-Controller Pattern (MVC)?

Model-view-controller architectural patterns use three components?

??

  1. A model component acts like a business layer that can manipulate requests and responses to create a coherent experience.?

  1. A view component that controls the user interface logic and helps improve the user’s experience.?

  1. A controller component that processes incoming requests, business logic, and other factors so the model and view components can operate efficiently.?

  1. Developers typically use MVC when building web pages that use lightweight applications.?

??

  • Java EE (Enterprise Edition)?

Java EE is a flexible architectural style that can coordinate tasks between web service specifications, web specifications, enterprise specifications, and other factors. Developers commonly use it when building web pages and managing distributed systems that need to coordinate with each other.?

??

  • Client-Server Architecture?

Client-Server Architecture is a layered architecture pattern that must include at least two factors:?

A client sending requests to a server.?

A server that can respond to the client’s requests.?

1-Tier Architecture?

1-tier client-server patterns can include multiple settings that influence how applications handle requests. ??

2-Tier Architecture?

2-tier architecture is a very simple, straightforward pattern that only relies on a client and a server. ?

3-Tier Architecture?

3-tier adds an intermediary to the structure of 2-tier architecture. When the client submits a request, it goes to middleware. The middleware passes the request to the server. Once received, the server sends a response to the middleware, which passes it to the client.?

N-Tier Architecture?

N-tier architecture, also called multi-tier architecture, involves at least five tiers:?

  • Client?
  • Internet?
  • Server?
  • Middle?
  • Data?

??

  • Microkernel Pattern?
  • Peer-to-Peer Architecture?
  • Event-Driven Architecture?

The actual architecture consists of:?

Event producers?

Event routers?

Event consumers?

When a user — the event producer — submits a request, it goes to the event router. The event router filters the events so it can pass appropriate events to the event consumer.?

E-commerce sites often use event-driven architecture because important events trigger useful actions. For instance, after you place an order, the application can notify you via email. When the item has been prepared for shipping, the app can send you a notification about that event. These types of event-driven tasks help lower any anxiety consumers feel when shopping online and waiting for deliveries to arrive.?

??

  • Microservices Architecture?

?

  • Choosing the Right Architecture?

Choosing the right architecture for your software project is a critical decision that can significantly impact its success.?

??

1. Project Requirements?

2. Complexity?

3. Team Expertise?

4. Technology Stack?

5. Scalability Needs?

6. Maintenance and Updates?

7. Cost?

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

Praveen Koppala的更多文章

社区洞察

其他会员也浏览了