Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between a web application and a client/server application?

I took this from another question I had.

Under appropriate uses for sqlite it has:

Situations Where SQLite Works Well

•Websites

SQLite usually will work great as the database engine for low to medium traffic websites (which is to say, 99.9% of all websites). The amount of web traffic that SQLite can handle depends, of course, on how heavily the website uses its database. Generally speaking, any site that gets fewer than 100K hits/day should work fine with SQLite. The 100K hits/day figure is a conservative estimate, not a hard upper bound. SQLite has been demonstrated to work with 10 times that amount of traffic.

Situations Where Another RDBMS May Work Better

•Client/Server Applications

If you have many client programs accessing a common database over a network, you should consider using a client/server database engine instead of SQLite. SQLite will work over a network filesystem, but because of the latency associated with most network filesystems, performance will not be great. Also, the file locking logic of many network filesystems implementation contains bugs (on both Unix and Windows). If file locking does not work like it should, it might be possible for two or more client programs to modify the same part of the same database at the same time, resulting in database corruption. Because this problem results from bugs in the underlying filesystem implementation, there is nothing SQLite can do to prevent it.

A good rule of thumb is that you should avoid using SQLite in situations where the same database will be accessed simultaneously from many computers over a network filesystem.


My Question:

I'm going to show my ignorance here but what is the difference between these two?

like image 709
johnny Avatar asked Apr 03 '09 18:04

johnny


People also ask

What is the difference between web and client server?

Web servers, domain name servers, and mail servers are some of the example servers using by all network users. A client is a user program that connects to a server to access a service. A web browser, such as Firefox, is a client program that makes use of web server facilities.

What is a client server application?

1 What is a Client/Server Application? In principle, a client/server application consists of a client program that consumes services provided by a server program. The client requests services from the server by calling functions in the server application.

What is the difference between web application and application?

The difference is that a web application will reside in the server instead of the client's computer and will process everything in the server - but , the control of the program is left for the client. A good example for a web application is this site.

Are there any security related differences between client server and web based applications?

In the client server application, the security is more and fewer security breaches are expected to happen as there are fewer users however, in the case of web application it s not that secure as it has too many users and it is often difficult to keep a track of.


2 Answers

A "Web Application" is one in which a browser is commonly used as the client. A Web application IS A Client/Server Application. In other words, you could think of a client/server application as a superclass, where the web application is a child class.

like image 116
hmcclungiii Avatar answered Dec 11 '22 05:12

hmcclungiii


There are a few differences of note:

Web Applications assume the client is a web browser and that communication between the client and server is stateless (HTTP). It also tends to assume that the client is "thin" and very little processing of information is done in the browser.

Client-Server Applications assume the client is a "thick" client and that communication between the client and server maintains state (this isn't necessarily true). Communication can be pretty much any protocol. The old-fashioned client-server, or 2-tier application does have each client connect to the database directly - I would advise against this for various reasons, number one being security. This is probably what the source you posted meant when saying SQLite isn't appropriate.

A 3+tier type of application could still have a with-state client-server communication, but the middle-tier would handle the actual database communication. In this case, latency on the network isn't important and SQLite could work (because it is more like a web app).

like image 23
Technical Bard Avatar answered Dec 11 '22 06:12

Technical Bard