Client Server Application vs Web Application
An application that runs on the client side and accesses the remote server for information is called a client/server application whereas an application that runs entirely on a web browser is known as a web application. The client server always makes requests to the remote server to get some information. The user interaction with the server is always through a user interface or application on the client side. The user interaction in a web application is through a web browser. A client server application can be platform specific as well as cross platform depending on the programming language used. A web application is platform independent because they require only a web browser. The cross platform language makes an application look native to the platform or the operation system of the client.
The client/server application is always installed on the client’s computer unlike a web application. Web applications can run on the browsers directly and hence do not require any installation. A client server application uses a two-tier architecture whereas a web application uses multi-tier architecture which consists of; user client, middle tier, and application server. A web application uses a single-user system unlike a client server application which uses two users: client and server.
A web application is hosted in a browser-controlled environment, or it is often programmed in a language that supports the browser. JavaScript is the most widely used browser-supported language. In client/server applications, the server machine is a host that runs single or multiple-server programs sharing their resources with clients. A client always requests from a server information or content without sharing any of its resources.
In a client/server application, it is difficult to test scripting errors whereas in web applications it is easy to test scripting errors. Specific types of clients used in a client/server model are web browsers, email clients, and online chat clients. The types of servers used are: web servers, ftp servers, application servers, data base servers, name servers, file servers, mail servers, terminal and print servers.
In a client/server model, the server often gets overloaded as the number of simultaneous client requests increases. In a web application, this problem is ruled out as a compatible web browser is all that is needed to get the web application working. Some of the examples of web applications include: Yahoo mail, Gmail, WebOffice, Google Apps, Microsoft Office Live, WebEx, etc.
Summary:
1. A client/server application uses a two-tier architecture whereas a web application uses multi-tier architecture.
2. In a client/server application, the user interaction with the server is mainly through a user interface whereas in a web application the user interaction is through a compatible web browser.
3. A client/server application lacks robustness because if a server fails, the requests cannot be completed whereas a web application exhibits robustness.
4. A client/server application requires installation on the client’s machine whereas a web application can run directly from a compatible web browser.
5. In a client/server model, the server may become overloaded with the increasing client requests which results in low performance whereas multiple users can use a web application at the same time and also deliver superior performance.