Sei sulla pagina 1di 3

 Diff.

between App and web server

Webserver: this can receive only html requests and as well this can only give out html
responses. Nothing more than that. Application server: business logic resides on the
application server. Application Server is responsible for handling the Business logic of the
system while Web server is responsible to cater to the HTTP requests. In three tier
Architecture the flow is as follows [Browser (Client)] ---> [Web server (http requests) +
application server (Business logic)] --->database server] Now if there are heavy
transactions on the system then the second Tier is bifurcated which results in the 4 Tier
Architecture. The flow is as follows [Browser(Client)]---> [Web server]--->[application
server(Business logic)]--->database server] an application server provides for the
following things 1.session management 2.load balancing 3.thread management
4.security 5.messaging depending on the configuration of the application server it can
provide one or all of the above features. In case of a web server, it just serves the
requests that it receives with the appropriate response, with the help of servlets or other
such programs. Can't we process request of HTTP protocols in application server An
application server is a generalized server for running more than one applications like
EJB, RMI, IIOP, JSP, Servlets, etc. A web server is for the purpose of processing the
requests over the Http protocols. Can I run an application server without a web server for
example does Web Logic run with out a web server?
The web server is mainly for catering to the http requests and the application server
caters to the need of load balancing in case of heavily loaded web applications or where
lots of transactions are involved. So the flow will be like the application server is used for
load balancing which it does with the support of any web server. Some application
servers are having their default web servers for e.g. Bluestone has got IIS as its inbuilt
web server. An Application server is like a superset of Webserver. However, unlike a
Webserver, this is a "generalized one" Web servers are servers which only accept your
requests related to Web over HTTP. Whereas Application Servers are bundle of servers
which not only transmit your request but also provide other services like messaging,
transaction management, mail service etc., Example of Webserver - JavaWebServer,
Jakarta-tomcat Example of Application Server - IBM Web sphere, BEA Web Logic

 What is a Client process?

The client is a process (program) that sends a message to a server process


(program), requesting that the server perform a task (service).Client programs usually
manage the user-interface portion of the application, validate data entered by the user,
dispatch requests to server programs, and sometimes execute business logic. The client-
based process is the front- end of the application that the user sees and interacts with.
The client process contains solution-specific logic and provides the interface between the
user and the rest of the application system. The client process also manages the local
resources that the user interacts with such as the monitor, keyboard, workstation CPU
and peripherals. One of the key elements of a client workstation is the graphical user
interface (GUI). Normally a part of operating system i.e. the window manager detects
user actions, manages the windows on the display and displays the data in the windows.

 What is a Server process?

A server process (program) fulfills the client request by performing the task requested.
Server programs generally receive requests from client programs, execute database
retrieval and updates, manage data integrity and dispatch responses to client requests.
Sometimes server programs execute common or complex business logic. The server-
based process "may" run on another machine on the network. This server could be the
host operating system or network file server; the server is then provided both file system
services and application services. Or in some cases, another desktop machine provides
the application services. The server process acts as a software engine that manages
shared resources such as databases, printers, communication links, or high powered-
processors. The server process performs the back-end tasks that are common to similar
applications.

 What is Middleware?

Connectivity allows applications to transparently communicate with other programs or


processes, regardless of their location. The key element of connectivity is the network
operating system (NOS). NOS provide services such as routing, distribution, messaging,
file and print, and network management services. NOS rely on communication protocols
to provide specific services. The protocols are divided into three groups: media, transport
and client-server protocols. Media protocols determine the type of physical connections
used on a network (some examples of media protocols are Ethernet, Token Ring, Fiber
Distributed Data Interface (FDDI), coaxial and twisted-pair). A transport protocol provides
the mechanism to move packets of data from client to server (some examples of
transport protocols are Novell's IPX/SPX, Apple's AppleTalk, Transmission Control
Protocol/ Internet Protocol (TCP/IP), Open Systems Interconnection (OSI) and
Government Open Systems Interconnection Profile (GOSIP)). Once the physical
connection has been established and transport protocols chosen, a client-server protocol
is required before the user can access the network services. A client-server protocol
dictates the manner in which clients request information and services from a server and
also how the server replies to that request (some examples of client- server protocols are
NetBIOS, RPC, Advanced Program-to-Program Communication (APPC), Named Pipes,
Sockets, Transport Level Interface (TLI) and Sequenced Packet Exchange (SPX)).

 What are the characteristics of client/server architecture?

The basic characteristics of client/server architectures are:

1) Combination of a client or front-end portion that interacts with the user, and a server or
back-end portion that interacts with the shared resource. The client process contains
solution-specific logic and provides the interface between the user and the rest of the
application system. The server process acts as a software engine that manages shared
resources such as databases, printers, modems, or high powered processors.

2) The front-end task and back-end task have fundamentally different Requirements for
computing resources such as processor speeds, memory, Disk speeds and capacities,
and input/output devices.

3) The environment is typically heterogeneous and multivendor. The Hardware platform


and operating system of client and server are not usually the same. Client and server
processes communicate through a well-defined set of standard application program
interfaces (API's) and RPC's.

4) An important characteristic of client-server systems is scalability. They can be scaled


horizontally or vertically. Horizontal scaling means adding or removing client workstations
with only a slight performance impact. Vertical scaling means migrating to a larger and
faster server machine or multiservers.

 Client/Server Business Application Architectures.

Traditional applications architectures have been based on function. Today, to meet the
needs of the business application architecture should reflect the complete range of
business requirements. Therefore, client/server computing demands a three layer view of
the organization.

1 The user interface layer, which implements the functional model

2 The business function layer, which implements the process model

3 The data layer, which implements the information model

It should be noted that this application architecture does not demand multiple hardware
platforms, although such technology can be utilized, if the environment is robust and
reliable enough and the business is prepared to pay the additional costs associated with
workstation and LAN technology.

Potrebbero piacerti anche