PublishedPaperIJSRET V10 Issue1 125
PublishedPaperIJSRET V10 Issue1 125
net/publication/376512127
Article in International Journal of Scientific Research and Engineering Trends · January 2024
CITATIONS READS
0 1,342
3 authors:
Geofrey Nyabuto
Kibabii University
11 PUBLICATIONS 4 CITATIONS
SEE PROFILE
All content following this page was uploaded by Geofrey Nyabuto on 30 January 2024.
Abstract- Client-server architecture is a distributed systems architecture where one or more client computers request resources
from a server computer over a network. The client computers provide user-friendly interfaces through which users request
resources from the server. In turn, the server receives one or more requests, processes them, and returns a response to the
requesting client. The birth of this architecture led to the birth of many models and applications including the Internet, banking
systems, and mobile cellular networks among others. This model enables multiple users to simultaneously access and use the
same resource. This study used a systematic approach to review types of client-server architecture, comparing these types by
pointing out their characteristics, advantages, and disadvantages. Through the Google search engine, articles were retrieved,
reviewed, and analyzed. The study was able to note that each of the types of client-server architecture has its advantages and
disadvantages as per implementation needs. Two-tier architecture works well in a small set-up where not many resources are
available, and the implementation is not resource intensive. On the other end, n-tier architecture is suitable where a lot of
resources are needed, and high processing speed is required.
Index Terms- Client-server architecture, two-tier, three-tier, n-tier, cloud computing, micro services, inter-process
communication.
© 2023 IJSRET
139
International Journal of Scientific Research & Engineering Trends
Volume 10, Issue 1, Jan-Feb-2024, ISSN (Online): 2395-566X
server computers can run on heterogeneous hardware and from their end as they fully rely on networks to access and
software resources. request a resource (Ahlan et al., 2010). This design is mostly
used where sensitive information is involved and where client
2. Advantages of Client Server Architecture computers cannot run some applications or even store data (A
Since its inception and adoption, the client-server architecture et al., 2017). On the other hand, thick client involves using
has brought several interventions and innovations some of client computers that can process some requests locally as they
which have allowed easier collaboration and resource sharing. run applications that allow them to handle these requests
One of the outstanding features of this architecture is its ability (Zakoldaev et al., 2019). For example, mobile applications can
to store data centrally with remote access from client computers run some applications independently without requesting any
geographically distributed around the world (Cimen et al., resources from the server. However, periodically, they can
2014). This ideally means that resources from the server can be connect to the server if some remote resources are needed.
accessed from multiple locations. With this distribution comes
scalability as more resources can easily be plugged into the II. METHODOLOGY
architectures and utilized from any location (Rana & Saleh,
2022). This increased the processing power of the architecture The research used a desktop review where journal articles
and ensured less to no turnaround time while servicing the published in peer-reviewed journals with open access were
requests. Such a model makes it easier and cheaper to maintain considered for analysis (Brereton et al., 2007). Articles on
resources in this architecture as they can be managed centrally. client-server architecture were searched through the Google
Load balancing is possible as the architecture allows plugging search engine and retrieved for evaluation in the next steps.
in easily of extra servers redundant and replica servers that Review articles were excluded from the research and only those
spread the workload across and at the same time offers an easier articles that collected primary data were included. Articles
recovery option in case one server fails (Guynes & Windsor, written in any other language apart from English were also
2011). All these are geared towards making resource sharing excluded.
possible regardless of the user’s physical location.
III. DATA ANALYSIS AND FINDINGS
3. Disadvantages
Since its incorporation and use, the client-server architecture A total of 15 articles met the set criteria and were considered
has been applied in several designs and applications harnessing for further analysis. From the articles, the most common types
various advantages. To its advantage are disadvantages that of client-server architecture were analyzed, and their
could potentially hinder its implementation if not considered advantages and disadvantages were also considered. Below is
and managed appropriately. One of the key disadvantages of a detailed description of these types of client-server
this architecture is its ensuring there is security of any shared architectures.
resource. As per its design, all information is stored centrally,
hence any issue with the network connection between the client
and the server could potentially affect or hinder the usability of IV. TYPES OF CLIENT-SERVER
this model. Any technical issue with the server will make it ARCHITECTURES
impossible for the client computers to connect and access any
resource from the server. Man-in-the-middle and Denial of There exist different client-server architectures based on the
Service (DoS) attacks are some of the most common attacks number of servers involved in the implementation. Some of the
that potentially affect the implementation of this architecture common architectures include.
(Chahal et al., 2019). DoS renders resources inaccessible
whereas Man in the Middle alters information as it is being sent 1. Two-Tier Architecture
between the client and the server. Other attacks include packet In this model, there are only two tiers of computing devices
spoofing among others. The initial implementation of this involved i.e., client and server. Workload is divided among
architecture is very expensive as it involves purchasing and these computers where the client will host user interfaces and
setting up powerful servers, setting up security mechanisms be used to send requests to the server whereas the server will
like purchasing and installing firewalls, and network set-up host the system that will be processing user requests. Such an
among others (Thomas et al., 2009). architecture can be used in managing simple applications which
do not need a lot of processing power.
4. Client Types in Client-Server Architecture
Client-server architecture can be implemented in two forms, Advantages
i.e., thin client architecture and thick client-server architecture. High performance as the database and application are
In thin client architecture, the design involves the use of client hosted in the system i.e., physically close to one another
computers that run to access resources from the server. These hence can quickly share information and service requests.
client computers do not handle any processing of information
© 2023 IJSRET
140
International Journal of Scientific Research & Engineering Trends
Volume 10, Issue 1, Jan-Feb-2024, ISSN (Online): 2395-566X
Developing applications that run on this architecture is The three components of this architecture are.
easier as they don’t need any extra logic for linking with Client Tier
other servers. This is the tier that displays information and exists at the
Applications developed in this environment are highest level. It sends information to other tiers for processing
homogeneous as they have static business logic. and displays results by sending them to the browser.
Logic or Application Tier: This is the middle tier also called the
logic or business logic layer. It does the processing of requests
as received from the client tier, and fetches data from the data
tier to help in processing and servicing requests.
Data Tier
In this tier, information is stored and retrieved from the
database. This tier does the actual storage of data using a
database management system. The application layer services
requests by extracting necessary information from this tier.
Figure 1: Two-tier Architecture
Advantages
High performance as the database and application are
hosted in the system i.e., physically close to one another
hence can quickly share information and service requests. Figure 2: Three-tier Architecture
Developing applications that run on this architecture is
easier as they don’t need any extra logic for linking with Advantages
other servers. Easier maintainability: With the separation of concerns
Applications developed in this environment are and modularization of systems, it is easier to maintain such
homogeneous as they have static business logic. a system.
Improved scalability: It is easier for each of these servers
Disadvantages to scale up since they run separately.
The two-tier architecture is an excellent design for systems with Better security: Since the presentation, application and
very few users who concurrently access the system. However, data layers are separated, there is improved security. Users
as the number of users concurrently accessing the system are unable to directly manipulate the database as all
increases, this model proves ineffective with the below requests must go through the application tier.
challenges. Increased performance as data and business logic are
Performance becomes a challenge as the number of users separated and each server or tier focuses on the processing
accessing and using the system resources increases. This of its core requests as required.
negatively impacts the implementation of such a system
rendering it unusable. Extra mechanisms need to be put in Disadvantages
place to ensure user requests are serviced. Compared to a two-tier architecture, it is complex to build
The two-tier architecture applications face a problem of a three-tier due to the increased number of communication
portability as the systems are tightly coupled. They are points.
dependent on some databases, and migrating from one to This model may call for an implementation of proxy server
another usually proves problematic. For example, porting that may end up increasing traffic.
a system running on MySQL to another RDBMS like
MSSQL is usually very challenging. 3. N-Tier Architecture
Also called multi-tier architecture, this model has presentation,
2. Three-Tier Architecture processing and data management logic separated both logically
This architecture introduces an additional tier to the two-tier and physically. In this architecture, several servers come
architecture to help overcome challenges encountered while together to process a request. The architecture has clearly
implementing it. In this model, the business logic, that is, the defined or separate layers with each implementing a specific
access of information, data storage and user interfaces are all functionality.
hosted differently. The additional tier hosts the application
system while the other hosts the database. This means the This model has several advantages and applications. It has
application system sits on a different server as well and the widely been applied in developing scaling applications like
database or storage system sits on another server. customer relationship management systems (CRM) as it has
© 2023 IJSRET
141
International Journal of Scientific Research & Engineering Trends
Volume 10, Issue 1, Jan-Feb-2024, ISSN (Online): 2395-566X
proved to be efficient, fast, and secure (Bhardwaj et al., 2014). network LAN and on the Internet. The server ensures all
N-tier architecture is scalable compared to the other requests received from the client are serviced. Many
architectures and helps improve data integrity. It is easier to applications, for example, mail systems, printing systems, ATM
create reusable components with improved security in this and others are based on this model.
architecture. Though this architecture has many advantages, it
is very complex to design applications in this architecture as a Cloud computing, a buzzword in the modern computing era is
lot of effort is needed to program, deploy, and maintain these based on this architecture as well as micro services. With this
applications. architecture, we can have simple implementations that do not
require many resources implementing a 2-tier architecture
whereas complex n-tier architecture is implemented where a lot
of resources are needed, and high processing power is desired.
V. RECENT AND FUTURE DEVELOPMENT 1. A, A. A., PhamHung, P., & NamHuh, E. (2017). An
Architecture of Thin Client in the Internet of Things and
Connected computing devices can share information through Efficient Resource Allocation in Cloud for Data
the Internet. The concurrent sharing of data by several devices Distribution. The International Arab Journal of
has made it possible to have interventions like massively Information Technology, 842-850.
multiplayer online games where users can play and compete 2. Ahlan, A. R., Mahmud, M. b., & Arshad, Y. b. (2010).
virtually (Ali et al., 2020). The success of applications on the Conceptual Architecture Design and Configuration of Thin
internet is made possible through the client-server architecture Client System For Schools in Malaysia: A Pilot Project.
making it possible for different users from different locations 952-955.
to share and access information stored centrally. 3. Ali, S., Alauldeen, R., & Khamees, R. A. (2020). What is
Client-Server System: Architecture, Issues and Challenge
1. Cloud Computing of Client-Server System (Review). ResearchGate, 1-6.
With increased adoption and penetration of IT in every aspect 4. Bhardwaj, D., Pandya, D., & Patel, D. (2014).
of human life, more data will continuously be generated by Implementing N-Tier Architecture for Improvement in
different devices that will ultimately need storage. This ideally Customer Relationship Management “CRM”.
means there will be an increased need for data centres to store International Journal of Engineering Research &
this data. Increased internet speeds will further push the use of Technology (IJERT), 2205-2209.
cloud computing technologies. Technologies like IoT, AI, and 5. Borrie, H. (2004). Introduction to Client/Server
ML, among others, will further push the demand for cloud Architecture. In H. Borrie, The Firebird Book: A Reference
computing services as they rely on the internet and data for their for Database Developers (pp. 75-84). IBPhoenix.
success and recent research already shows their increased 6. Brereton, P., Kitchenham, B. A., Budgen, D., Turner, M.,
adoption (Islam et al., 2023). & Khalil, M. (2007). Lessons from applying the systematic
literature review process within the software engineering
2. Microservices domain. Journal of Systems and Software, 571-583.
Due to the increased demand for high-performance software 7. Chahal, J. K., Bhandari, A., & Behal, S. (2019).
systems, there is a need to develop modular software systems Distributed Denial of Service Attacks: A Threat or
that are based on the microservice architecture. Microservice Challenge. In New Review of Information Networking
architecture advocates for the development of independently (pp. 31-103).
deployed, loosely coupled software systems which leads to the 8. Cimen, C., Kavurucu, Y., & Aydin, H. (2014). Usage of
rapid development of highly scalable and reliable software Thin-Client / Server Architecture in Computer Aided
systems. The client-server architecture allows rapid Education. The Turkish Online Journal of Educational
deployment and communication between the different services Technology, 181-185.
(Zhang et al., 2023). 9. Guynes, C. S., & Windsor, J. (2011). Revisiting
Client/Server Computing. Journal of Business &
VI. CONCLUSION Economics Research, 17-22.
10. Islam, R., Patamsetti, V. V., Gadhi, A., Gondu, R. M.,
Client-server architecture is one of the most popular models Bandaru, C. M., Kesani, S. C., & Abiona, O. (2023). The
making use of both the client and server hardware resources to Future of Cloud Computing: Benefits and Challenges.
service a request. This architecture can be used in both the local
© 2023 IJSRET
142
International Journal of Scientific Research & Engineering Trends
Volume 10, Issue 1, Jan-Feb-2024, ISSN (Online): 2395-566X
© 2023 IJSRET
143