Introduction to cloud computing l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 39

Introduction to cloud computing PowerPoint PPT Presentation


Introduction to cloud computing. Jiaheng Lu Department of Computer Science Renmin University of China www.jiahenglu.net. Cloud computing. Review: What is cloud computing?.

Download Presentation

Introduction to cloud computing

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Introduction to cloud computing l.jpg

Introduction to cloud computing

Jiaheng Lu

Department of Computer Science

Renmin University of China

www.jiahenglu.net


Cloud computing l.jpg

Cloud computing


Review what is cloud computing l.jpg

Review:What is cloud computing?

Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a serve over the Internet.

Users need not have knowledge of, expertise in, or control over the technology infrastructure in the "cloud" that supports them.


Review characteristics of cloud computing l.jpg

Review: Characteristics of cloud computing

  • Virtual.

    software, databases, Web servers, operating systems, storage and networking as virtual servers.

  • On demand.

    add and subtract processors, memory, network bandwidth, storage.


Slide6 l.jpg

Review: Types of cloud service

SaaS

Software as a Service

PaaS

Platform as a Service

IaaS

Infrastructure as a Service


Any question and any comments l.jpg

Any question and any comments ?

2014/3/10

8


Google app engine l.jpg

Google App Engine


Review google app engine l.jpg

Review: Google App Engine

Does one thing well: running web apps

Simple app configuration

Scalable

Secure

10


Any question and any comments11 l.jpg

Any question and any comments ?

2014/3/10

11


Distributed system l.jpg

Distributed system


A distributed system l.jpg

A distributed system

B

A

C

D


Client server system l.jpg

client-server system

Client

Client

Client

Server

Client


Multiple servers l.jpg

multiple servers

Server

Server

Server

Server

Server


Slide16 l.jpg

Why distributed systems?

What are the advantages?

distributed vs centralized?

multi-servervs client-server?


Slide17 l.jpg

Why distributed systems?

What are the advantages?

distributed vs centralized?

multi-servervs client-server?

  • Geography

  • Concurrency => Speed

  • High-availability (if failures occur).


Slide18 l.jpg

Why not distributed systems?

What are the disadvantages?

distributed vs centralized?

multi-servervs client-server?


Slide19 l.jpg

Why not distributed systems?

What are the disadvantages?

distributed vs centralized?

multi-servervs client-server?

  • Expensive (to have redundancy)

  • Concurrency => Interleaving => Bugs

  • Failures lead to incorrectness.


Outline concepts and terminology l.jpg

OutlineConcepts and Terminology

  • What is Distributed

  • Distributed data & objects

  • Distributed execution

  • Three tier architectures

  • Transaction concepts


What s a distributed system l.jpg

What’s a Distributed System?

  • Centralized:

    • everything in one place

    • stand-alone PC or Mainframe

  • Distributed:

    • some parts remote

      • distributed users

      • distributed execution

      • distributed data


Why distribute l.jpg

Why Distribute?

  • No best organization

  • Companies constantly swing between

    • Centralized: focus, control, economy

    • Decentralized: adaptive, responsive, competitive

  • Why distribute?

    • reflect organization or application structure

    • empower users / producers

    • improve service (response / availability)

    • distributed load

    • use PC technology (economics)


What should be distributed l.jpg

What Should Be Distributed?

  • Users and User Interface

    • Thin client

  • Processing

    • Trim client

  • Data

    • Fat client

  • Will discuss tradeoffs later

Presentation

workflow

Business Objects

Database


Transparency in distributed systems l.jpg

Transparency in Distributed Systems

  • Make distributed system as easy to use and manage as a centralized system

  • Give a Single-System Image

  • Location transparency:

    • hide fact that object is remote

    • hide fact that object has moved

    • hide fact that object is partitioned or replicated

  • Name doesn’t change if object is replicated, partitioned or moved.


Outline concepts and terminology25 l.jpg

OutlineConcepts and Terminology

  • Why Distribute

  • Distributed data & objects

    • Partitioned

    • Replicated

  • Distributed execution

    • remote procedure call

    • queues

  • Three tier architectures

  • Transaction concepts


Distributed execution threads and messages l.jpg

threads

shared memory

Distributed ExecutionThreads and Messages

  • Thread is Execution unit(software analog of cpu+memory)

  • Threads execute at a node

  • Threads communicate via

    • Shared memory (local)

    • Messages (local and remote)

messages


Peer to peer or client server l.jpg

Peer-to-Peer or Client-Server

  • Peer-to-Peer is symmetric:

    • Either side can send

  • Client-server

    • client sends requests

    • server sends responses

    • simple subset of peer-to-peer

request

response


Remote procedure call the key to transparency l.jpg

y = pObj->f(x);

x

f()

return val;

y = val;

val

Remote Procedure Call: The key to transparency

  • Object may be local or remote

  • Methods on object work wherever it is.

  • Local invocation


Remote procedure call the key to transparency29 l.jpg

proxy

Obj Local?

x

x

stub

marshal

un

marshal

x

un

marshal

pObj->f(x)

marshal

Obj Local?

x

f()

return val;

val

val

val

val

Remote Procedure Call: The key to transparency

  • Remote invocation

y = pObj->f(x);

f()

return val;

y = val;


Object request broker orb l.jpg

Transaction

Object Request Broker (ORB)

  • Registers Servers

  • Manages pools of servers

  • Connects clients to servers

  • Does Naming, request-level authorization,

  • Provides transaction coordination (new feature)

  • Old names:

    • Transaction Processing Monitor,

    • Web server,

    • NetWare

Object-Request Broker


Outline concepts and terminology31 l.jpg

OutlineConcepts and Terminology

  • Why Distributed

  • Distributed data & objects

  • Distributed execution

    • remote procedure call

    • queues

  • Three tier architectures

    • what

    • why

  • Transaction concepts


Work distribution spectrum l.jpg

Fat

Thin

Fat

Thin

Work Distribution Spectrum

  • Presentation and plug-ins

  • Workflow manages session & invokes objects

  • Business objects

  • Database

Presentation

workflow

Business Objects

Database


Pc evolution to three tier intelligence migrated to server l.jpg

PC Evolution to Three TierIntelligence migrated to server

  • Stand-alone PC (centralized)

  • PC + File & print servermessage per I/O

  • PC + Database server message per SQL statement

  • PC + App server message per transaction

  • ActiveX Client, ORB ActiveX server, Xscript

IO request

reply

disk I/O

SQL

Statement

Transaction


The pattern three tier computing l.jpg

The Pattern: Three Tier Computing

Presentation

  • Clients do presentation, gather input

  • Clients do some workflow (Xscript)

  • Clients send high-level requests to ORB (Object Request Broker)

  • ORB dispatches workflows and business objects -- proxies for client, orchestrate flows & queues

  • Server-side workflow scripts call on distributed business objects to execute task

workflow

Business

Objects

Database


The three tiers l.jpg

Web Client

HTML

VB Java

plug-ins

VBscritpt

JavaScrpt

Middleware

ORB

TP Monitor

Web Server...

Object

server

Pool

VB or Java

Script Engine

VB or Java

Virt Machine

HTTP+

DCOM

ORB

Internet

DCOM (oleDB, ODBC,...)

LU6.2

Legacy

Gateways

IBM

The Three Tiers

Object & Data

server.


Why did everyone go to three tier l.jpg

Why Did Everyone Go To Three-Tier?

Presentation

  • Manageability

    • Business rules must be with data

    • Middleware operations tools

  • Performance (scalability)

    • Server resources are precious

    • ORB dispatches requests to server pools

  • Technology & Physics

    • Put UI processing near user

    • Put shared data processing near shared data

workflow

Business

Objects

Database


What middleware does orb tp monitor workflow mgr web server l.jpg

What Middleware Does ORB, TP Monitor, Workflow Mgr, Web Server

  • Registers transaction programs workflow and business objects (DLLs)

  • Pre-allocates server pools

  • Provides server execution environment

  • Dynamically checks authority(request-level security)

  • Does parameter binding

  • Dispatches requests to servers

    • parameter binding

    • load balancing

  • Provides Queues

  • Operator interface


Server side objects easy server side execution l.jpg

Server Side ObjectsEasy Server-Side Execution

A Server

  • ORB gives simple execution environment

  • Object gets

    • start

    • invoke

    • shutdown

  • Everything else is automatic

  • Drag & Drop Business Objects

Network

Receiver

Queue

Management

Connections

Security

Context

Configuration

Thread Pool

Service logic

Synchronization

Shared Data


Slide39 l.jpg

Q&A

Thanks


  • Login