In this tutorial, you begin to learn with an examination of some of the primary concepts in distributed software, which includes client-server architecture, message passing technique, and remote procedure calls. Then, you will examine the increasingly significant cluster architecture.



What is Client - Server Computing

Client/server computing is a new phase in the computer field and comes with a new set of terminologies. In a client/server environment, there are clients and servers. The client systems are typically single-user workstations or computers that offer a user-friendly interface for the end-user.

The client-based station usually has a graphical user interface (GUI) that is comfortable for users and includes Windows and a mouse. Examples of such interfaces include Microsoft Windows and Mac OS. Client-based applications are designed for easy use and have familiar tools like spreadsheets.

Each client/server environment server provides a set of shared services for the clients. The most commonly used server category currently is database servers.

Distributed Client/Server Architecture's Terminologies

  1. Applications Programming Interface (API): It is a set of tasks, and it calls programs that allow clients as well as servers to intercommunicate with each other.
  2. Client / User: It is a networked information requester, which is typically a computer system or workstation that can query databases and/or other information from a server.
  3. Middleware: It is a set of drivers, API, and/or other software that improves the connection between a client application with a server.
  4. Relational Database: It is a type of database wherein the information access becomes limited to the selection of rows that satisfy all search criteria.
  5. Server: It is also a computer, typically a high-powered system and workstations or a minicomputer or a mainframe, which houses information to manipulate the networked clients.
  6. Structured Query Language (SQL): It is a language developed by IBM (International Business Machines), and ANSI has standardized it for addressing, producing, updating, and querying RDBs (relational databases).

Distributed Message Passing

In distributed processing systems, computers do not share main memory; each is an isolated system. Therefore, inter-processor communication mechanisms such as semaphores that rely on shared memory cannot be used. Instead, techniques that depend on message passing are used.

The first message passing technique is straightforward and used within a single system. The second technique relies on message passing as an essential function for remote procedure calls.

Clusters in Distributed Systems

Clustering provides an alternative solution to symmetric multiprocessing by supplying high performance and availability, which is particularly attractive for server applications. A cluster can be defined as a group of interconnected, complete computers that work together as a combined computing resource, creating the structure of a single machine. The term "complete computer" signifies that a system can function on its own, independent of the cluster, with each computer in the cluster usually referred to as a "node."



Found This Page Useful? Share It!
Get the Latest Tutorials and Updates
Join us on Telegram