Web application
From DocForge
A web application is a program which interacts with users through a web browser. While a web server can respond to requests with static files, a web application typically handles requests dynamically by programatically building the response.
Contents |
[edit] Components
Web applications consist of several components. Each is often thought of as a layer, with each built on top of another. Here these layers are described from the bottom up.
[edit] Database
Most web applications are built with dynamic data. This data is usually stored in a database server, or sometimes another form of long-term storage. Some data is expected to change often, such as in a shopping cart or discussion board. Other data may change less frequently, such as zip codes or help documentation. The type of data storage chosen is dependent on the format of the data, the frequency of its change, and how it's going to be used.
[edit] Web Application Server
The core of a web application is the application server. The server handles requests from the web browser and builds the appropriate response. A web application can directly listen for HTTP requests. More often, however, a generic web server, such as Apache's httpd, listens for requests and hands them to the appropriate application. Today, the server component of web applications are most often written in Java, Perl, PHP, Python, or .NET.
[edit] Web Browser
The top layer of any web application is the web browser, which directly interacts with the user. This is the one component over which web application developers have the least control, as on a public web server any version of any web browser may try to connect and interact. Therefore standards are extremely important. Browsers need to support common standards so they can all be used with the widest range of web sites. And web applications need to support common standards so they don't alienate any segment of potential users.
Today most web applications serve HTML or XHTML to the web browser. They often send JavaScript and/or Flash to make the content dynamic and more interactive.
[edit] State
While a typical client application can retain its state while continually waiting for user input, web applications are inherently stateless due to the HTTP protocol. Each request from any user is handled independently. To overcome this limitation cookies are often used to keep track of user sessions. With each page request the active session can be checked to get user-specific information.

