introduction to distributed systems dr. s. indran 23 january 2004

33
Introduction to distributed systems Dr. S. Indran 23 January 2004

Upload: stephanie-phillips

Post on 28-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Introduction to distributed systems

Dr. S. Indran23 January 2004

Organisation

Architecture and programming paradigms for distributed system developmentThe concepts of clients, servers, and middlewareDistributed paradigms

A simple e-commerce system

Distributed system

A distributed system in which the computer power in the system is distributed geographically around a number of computers which share the processing load of system

Network concepts

Network topologiesLayered modelsThe InternetInternet addressesDomain names and namingClients and serversPorts and sockets

Network topologies

Bus networkRing networkHub network

Bus network

Ring network

Hub network

Domain names and naming

Top-level domain name

Organisation

com Commercial company

edu or ac Educational

gov Governmental

mil Military

biz Show business

org Organisations not catered for above

aero Aeronautics

Internet domain name system

Architecture and programming paradigms

Message passingDistributed objects technologyEvent-based bus architecturesRemote Procedure callTuple architecture

Message passing

ProtocolsFixed and adaptive protocolsSynchronous and asynchronous message passing

Message passing: Requirements

Communication needs very simpleHigh performance is requiredRapid implementation is requiredThe system uses a technology that no existing protocols will communicate with

A message passing architecture

Protocols

A language which embodies the functions required by an entity in a distributed system (usually a client) which another entity provides (usually a server)

Synchronous and asynchronous message passing

Synchronous message passing involves (usually a client) in the message passing process and sending a message and a second entity (usually a server) receiving it, carrying out some processing and then sending back some responses while the first entity pauses waitingIn Asynchronous message passing, each entity does not have to wait for the next part of the dialogue they are engaged in and can carry out some other task

Distributed objects technology

A distributed object is an object which is resident on one computer and for which methods can be invoked associated with code resident on other computersThis technology hides the network from the designer and the programmer.Examples: CORBA, and RMI.

Distributed object architecutre

n-Tiered Architecture

A tier is a logically separated and encapsulated set of processes.There are three basic parts: The user interface tier (representation layer). The data tier (server-side component), which

is the database data processed by the Web application.

The middle tier (middle-tier component), which processes complex business processing (usually place on a separate server called the application server).

Three-tier architecture

Middle-Tier Technologies

The middle-tier application development is a separated and encapsulated set of processes usually related to business applications.The applications in the middle-tier are build as components which are accessed from the server-side components (data tier).Popular technologies for building middle-tier components are: the Component Object Model (COM) with C++ and VB, and the JavaBeans with JavaThe middle tier components are usually place on a separate server called the application server.

Clients and servers

A server is a computer which carries out a service such as printing out a file or responding to a web pageA client is some computer which require service

Clients and servers

ClientsServersMiddlewareProtocolsInternal and external servicesEnterprise frameworksWhy client-server?

Types of server

A file server provides files for the clients that ask for its serviceA database servers are computers which store large collections of data which are structuredA groupware is software which organises the work of a number of staff in some enterpriseA web server is a typical type of file server that contain files which store the various components of a web siteA mail server is a computer which has the task of receiving, storing, and sending e-mailObject serversPrint serversApplication servers

Tiered architectures

Two-tier architecture (a presentation and logic layer, and a data layer)Three-tier architecture (a presentation layer, a processing (application server) layer, and a data layer

Middleware

The intermediate software between clients and severs is known as middleware General middleware is software which

is associated with services required by all clients and servers

Service middleware is associated with a specific service such as a printing a file on a remote computer

Enterprise frameworks

FeaturesThe J2EE frameworkThe .Net framework

Enterprise frameworks features

Multi-language supportSupport for legacy codeSupport for high-volume transactionsMessaging supportWeb server programming

The J2EE framework components (Continued)

Java Database Connectivity (JDBC)Remote object accessEnterprise JavaBeansThe Java Messaging ServiceJava Naming and Directory Interface (JNDI)Legacy interfacing

The J2EE framework components

XML processingWeb server programmingSecurity in J2EEAccess to standard protocols

The .Net framework

Provides similar features to J2EE frameworkInvolved configuring many of microsoft products such as Excel, Word, MS Access together with supporting language such as Visual Basic, C++, and CSharp.

J2EE vs. .Net

J2EE is platform independent.Net is a multi-language approachXML is placed more centrally in .Net than J2EE