The purpose is to understand how different server components work together to provide services to users. A server plays an important role in a web-based application because it receives user requests, processes them, communicates with databases and other services, and sends the required response back to the user.
Through this learning task, I gained a basic understanding of how server infrastructure is designed, managed and monitored.
Objective
• To understand the concept of server used in a server.
• To learn about virtual servers and virtualization.
• To understand server architecture and how different components communicate.
• To study the functions of an operating system in a server.
• To understand the relationship between software, virtual servers, operating systems and server architecture.
• To identify a suitable server environment for a web-based application such as O2 Saver.
• To understand the basic requirements of server management.
Understanding Server
A server can be a physical computer or a virtual machine that runs different services and applications. When a user accesses a website or application, the request is sent to the server through the network. The server receives the request, processes it using the required application or backend service, and sends the result back to the user.
For example, if a user performs an action in an application, the request may first reach the web server and then be passed to the backend application. The backend processes the request and, if necessary, communicates with the database. After completing the required operation, the response is sent back to the user.
The basic flow:
User → Internet → Server → Backend Application → Database → Response to User
Virtual Server
A virtual server is a software-based server environment that runs on a physical server using virtualization technology.
The basic structure can be represented as:
Physical Server → Hypervisor → Virtual Server → Operating System → Applications
A hypervisor is software that creates and manages virtual machines and allows multiple virtual environments to share the resources of a physical server.
Some commonly known virtualization technologies are:
• VMware
• KVM
• Microsoft Hyper-V
• VirtualBo
Advantages of Virtual Servers
- Cost Efficiency Organizations can use virtual infrastructure without purchasing a separate physical server for every application.
- Resource Flexibility CPU, memory and storage resources can be allocated according to application requirements.
- Scalability Resources can often be increased when application traffic and workload increase.
- Backup and Recovery Depending on the platform, virtual machines can support snapshots and backup mechanisms.
- Testing and Development Separate virtual environments can be created for development, testing and production.
Server Architecture
Server architecture describes how different components of a server-based application are arranged and how they communicate with each other.
The communication flow is:
User → Internet → Web Server → Backend Application → Database
The response then travels back:
Database → Backend Application → Web Server → Internet → User
A common web application architecture consists of three main layers.
Presentation Layer
The presentation layer is the part of the application that users interact with.
Examples include:
• Website
• Web browser
• Mobile application
• User interface
Application Layer
The application layer contains the backend logic of the application.
It is responsible for:
• Processing user requests
• Authentication
• API processing
• Business logic
• Data processing
Data Layer
The data layer is responsible for storing and retrieving information.
Examples include:
• MySQL
• PostgreSQL
• MongoDB
Operating System
An Operating System (OS) is system software that manages the computer's hardware and provides an environment for applications to run.
In a server, the operating system is responsible for managing important resources such as:
• CPU
• RAM
• Storage
• Network
• Users
• Processes
• Files
• Security
Common server operating systems include:
• Ubuntu Server
• Debian
• Rocky Linux
• Red Hat Enterprise Linux
• Windows Server
Linux-based operating systems are commonly used in server environments because they provide strong networking, security, automation and administration capabilities.
Functions of an Operating System in a Server
Process Management
The operating system manages all running processes and services.
For example:
• Web server process
• Backend process
• Database process
• Monitoring process
The OS allocates CPU resources to these processes.
Memory Management
The operating system manages RAM and allocates memory to different applications and services.
File Management
The operating system manages:
• Files
• Folders
• Storage
• File permissions
• Directories
Network Management
The OS manages network communication between the server and other systems.
It handles:
• Network interfaces
• Connections
• Ports
• Network services
User Management
The operating system manages user accounts and controls what different users are allowed to access.
Security Management
The OS supports security through:
• User authentication
• Access control
• Permissions
• Firewall configuration
• Security updates
Resource Management
The operating system manages the server's:
• CPU
• RAM
• Storage
• Network resources
Logging and Monitoring
The operating system records important system events and errors through logs. These logs can help administrators identify problems and troubleshoot the server.
Suitable Server Environment
For a web-based application, a Linux-based virtual server or cloud VPS can be considered a practical reference environment.
A possible high-level architecture is:
Users
↓
Internet / HTTPS
↓
Linux Virtual Server / Cloud VPS
↓
Web Server
↓
Backend Application
↓
Database
Server Management Requirements
Important areas include:
Traffic Monitoring
Traffic monitoring helps understand the number of requests and users accessing the application.
Performance Monitoring
Server performance can be monitored using:
• CPU usage
• RAM usage
• Storage usage
• Network usage
• Response time
Log Management
Server and application logs can help identify:
• Errors
• Failed requests
• Service problems
• Abnormal activities
Security
Server security includes:
• Secure user access
• Proper permissions
• Firewall configuration
• HTTPS
• Software updates
• Secure authentication
Backup and Recovery:
Important application and database information should have suitable backup and recovery procedures.
Scalability:
If the number of users or amount of traffic increases, server resources may need to be increased to maintain performance.
Top comments (0)