User:Zwang18/Writting assignment 1g: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 12: Line 12:


===Static===
===Static===
The static server is a direct and naive implementation of HTTP protocol. In such model, every request corresponds to a file on server, the server daemon fetch the correspond file and send the file to client as is.
[[Image:Static.JPG|left|Workflow of a static server]]


Therefore, the response is not dynamically generated.
The static server is a direct and naive implementation of HTTP protocol. In such model, every request corresponds to a file on server, the server daemon fetch the correspond file and send the file directly to client as is.
[[Image:Static.JPG|left|Workflow of a static server]]
 
Therefore, as its name indicates, the response content is not dynamically generated.


===CGI and PHP===
===CGI and PHP===

Revision as of 18:01, 12 February 2013

Introduction

Web framework is a software framework that is designed to support the development of web applications like dynamic website, web service APIs. It frees developer from lower layer details and provide tools to accelerate the development. A framework usually correspond to one or more languages and types of Database.

Except for standard libraries, web framework often provide libraries for frequently used functions in web applications and hide low level details to the developer. It also has all required protocols well implemented, i.e. HTTP(s) and all supporting protocols. Except the standard library, most web framework will include libraries for frequently used functions and modules by default, like: URL Encoding, HTTP Request header parsing, URL mapping, session module and Database module.

In addition, Template, Caching, Load balance, URL Fetch, DoS Protection, Frontend Channel, Mail, Open Authorization, DOM management, XMPP are also commonly seen features in most modern web framework.

Web application process

Most web applications are based on HTTP(s) protocol, where client and server uses Request-Response method to exchange information. In a typical round, client sends information encoded into a HTTP request header, server will respond with a HTML page, Json or XML data. The response is usually real-time generated based on the request.

Usually server only respond to requests and is not able to start a connection to client, unless certain hack like Javascript Channel is used.

Static

Workflow of a static server
Workflow of a static server

The static server is a direct and naive implementation of HTTP protocol. In such model, every request corresponds to a file on server, the server daemon fetch the correspond file and send the file directly to client as is.

Therefore, as its name indicates, the response content is not dynamically generated.

CGI and PHP

Modern framework

Features

supporting functions (Database interface, Session management, Load balance)(, )

Security

Frameworks

Google Appengine web.go

Backend

Types

CMS

Plug-ins

MVC

3-Tiers

Push-based vs. pull-based

languages

Shell Script

Java

Python

Go

Web.go Google Appengine

VB Script

Ruby

Javascript

Frontend

jQuery

ExtJS

Prototype

Database

SQLite

MySQL

Cloud SQL

BigTable

mongoDB