Service Oriented Architecture(SOA)

Similar documents
CS 169 Software Engineering"

Cloud Computing and Amazon Web Services

Introduction to Cloud : Cloud and Cloud Storage. Lecture 2. Dr. Dalit Naor IBM Haifa Research Storage Systems. Dalit Naor, IBM Haifa Research

Cloud Computing. Alex Crawford Ben Johnstone

Emerging Technology for the Next Decade

Oracle Applications and Cloud Computing - Future Direction

API Oriented Architecture Security The development of SOA in an API oriented world. Security Swisscom (Schweiz) AG

Scaling in the Cloud with AWS. By: Eli White (CTO & mojolive) eliw.com - mojolive.com

Trends in Cloud Computing and Data Intensive Networks. PASIG Malta - 25 June 2009

WOLKEN KOSTEN GELD GUSTAVO ALONSO SYSTEMS GROUP ETH ZURICH

Cloud Computing: Computing as a Service. Prof. Daivashala Deshmukh Maharashtra Institute of Technology, Aurangabad

CIS 4930/6930 Spring 2014 Introduction to Data Science Data Intensive Computing. University of Florida, CISE Department Prof.

CLOUD COMPUTING. When It's smarter to rent than to buy

Course Goals. Solve Non-Technical Customer problem Server side: Ruby on Rails Client side: HTML, CSS, AJAX, JavaScript Deploy using cloud computing

Above the Clouds A Berkeley View of Cloud Computing

Data Centers and Cloud Computing

High Performance Applications over the Cloud: Gains and Losses

How To Use Arcgis For Free On A Gdb (For A Gis Server) For A Small Business

Cloud computing. Examples

Amazon Elastic Compute Cloud Getting Started Guide. My experience

How swift is your Swift? Ning Zhang, OpenStack Engineer at Zmanda Chander Kant, CEO at Zmanda

Cloud Computing: Obstacles & Opportunities

Data Centers and Cloud Computing. Data Centers

Part V Applications. What is cloud computing? SaaS has been around for awhile. Cloud Computing: General concepts

Cloud Computing: Beyond the Hype The Views of Research University CIOs. Rich Fagen, CIO, Caltech

SOA and Cloud in practice - An Example Case Study

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

Terry W Hoffmann, Adjunct Professor Milwaukee School of Engineering

Data Centers and Cloud Computing. Data Centers. MGHPCC Data Center. Inside a Data Center

Building an Internal Cloud that is ready for the external Cloud

Grid Computing vs Cloud

Building Out Your Cloud-Ready Solutions. Clark D. Richey, Jr., Principal Technologist, DoD

Introduction to Service Software Engineering

Cloud Courses Description

CHAPTER 8 CLOUD COMPUTING

Clouds vs Grids KHALID ELGAZZAR GOODWIN 531

Zadara Storage Cloud A

Cloud Computing An Elephant In The Dark

Operating Systems: Basic Concepts and History

Demystifying the Cloud Computing

Data Centers and Cloud Computing. Data Centers

Cloud Computing For Bioinformatics

CS 91: Cloud Systems & Datacenter Networks

Certified Cloud Computing Professional VS-1067

Written examination in Cloud Computing

OTM in the Cloud. Ryan Haney

Cloud Computing. Cloud computing:

Sistemi Operativi e Reti. Cloud Computing

A Review on "Above the Clouds: A Berkeley View of Cloud Computing (Armbrust, Fox, Griffith at.el.)"

Understanding ArcGIS Deployments in Public and Private Cloud. Marwa Mabrouk

References. Introduction to Database Systems CSE 444. Motivation. Basic Features. Outline: Database in the Cloud. Outline

Introduction to Database Systems CSE 444

Cloud Computing Technology

The Cloud at Your Service

The Hidden Extras. The Pricing Scheme of Cloud Computing. Stephane Rufer

Introduction to Cloud Computing

Cloud Computing Trends

Cloud Computing Services and its Application

Analysis and Research of Cloud Computing System to Comparison of Several Cloud Computing Platforms

Technical aspects of Cloud computing. Luís Ferreira Pires University of Twente Meeting of the NVvIR, 17 June 2010

Virtual computers and virtual data storage

Cloud Courses Description

Building Blocks of the Private Cloud

Cloud Computing Software as a Service

SQL Server Virtualization 101. David Klee, Group Principal and Practice Lead. SQL PASS Virtualization VC,

Cloud Computing Is In Your Future

Cloud Computing with Microsoft Azure

What is Cloud Computing? Why call it Cloud Computing?

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

Service Oriented Cloud Computing Architectures. Asher Vitek 12/3/2011 UMM CSci Senior Seminar Conference Morris, MN.

CLOUD COMPUTING Y SU IMPACTO EN LA INFORMATICA

Cloud Computing. Chapter 2 Software as a Service (SaaS)

Cloud-based business innovation, transformation, and the future of enterprise IT

Ø Teaching Evaluations. q Open March 3 through 16. Ø Final Exam. q Thursday, March 19, 4-7PM. Ø 2 flavors: q Public Cloud, available to public

Cloud computing - Architecting in the cloud

Title one MAKING YOUR CAMPUS CLOUD READY, PLATFORM AGNOSTIC & EASILY DEPLOYING CLOUD APPLICATIONS. Title two

Cloud Computing: Making the right choices

NEXT-GENERATION, CLOUD-BASED SERVER MONITORING AND SYSTEMS MANAGEMENT

Cloud Service Model. Selecting a cloud service model. Different cloud service models within the enterprise

Last time. Data Center as a Computer. Today. Data Center Construction (and management)

Flash Use Cases Traditional Infrastructure vs Hyperscale

Software Systems Architecture in a World of Cloud Computing. Christine Miyachi SDM Entering Class 2000

Are You in Control of Your Cloud Data? Expanded options for keeping your enterprise in the driver s seat

Subash Krishnaswamy Applications Software Technology Corporation

How To Understand Cloud Computing

Tapping into the Cloud

Cloud Computing Submitted By : Fahim Ilyas ( ) Submitted To : Martin Johnson Submitted On: 31 st May, 2009

Software as a Service (SaaS) and Platform as a Service (PaaS) (ENCS 691K Chapter 1)

Data Mining in the Swamp

A study of Cloud Computing Ecosystem

benchmarking Amazon EC2 for high-performance scientific computing

Large-Scale Web Applications

NEC Corporation of America Intro to High Availability / Fault Tolerant Solutions

Part II: What s behind the cloud vendors AWS, Azure and GCP?

Introduction to Cloud Computing

Managing the Performance of Cloud-Based Applications

Server Virtualization and Consolidation

APIs vs. SOA Integrations with SX without the ION Investment

Transcription:

Outline Service Oriented Architecture ( 1.7) Cloud Computing, Fallacies and Pitfalls ( 1.8-1.9) Pair Programming ( 9.3) Ruby 101 ( 3.1) Everything in Ruby is an Object ( 3.2-3.3) 1

Service Oriented Architecture(SOA) (Engineering Long Lasting Software 1.7) David Patterson 2

Service Oriented Architecture SOA: SW architecture where all components are designed to be services Apps composed of interoperable services Easy to tailor new version for subset of users Also easier to recover from mistake in design Contrast to SW silo without internal APIs 3

CEO: Amazon shall use SOA! 1. All teams will henceforth expose their data and functionality through service interfaces. 2. Teams must communicate with each other through these interfaces. 3. There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team's data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network. 4

CEO: Amazon shall use SOA! 4. It doesn't matter what [API protocol] technology you use. 5. Service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions. 6. Anyone who doesn't do this will be fired. 7. Thank you; have a nice day! 5

Bookstore: Silo Internal subsystems can share data directly Review access user profile All subsystems inside single API ( Bookstore ) (Figure 1.3, Engineering Long Lasting Software by Armando Fox and David Patterson, Beta edition, 2012.) 6

Bookstore: SOA Subsystems independent, as if in separate datacenters Review Service access User Service API Can recombine to make new service ( Favorite Books ) (Figure 1.4, Engineering Long Lasting Software by Armando Fox and David Patterson, Beta edition, 2012.) 7

Which statements NOT true about SOA? SOA does not affect performance Silo d systems likely completely down on a failure, SOA must deal with partial failures SOA improves developer productivity primarily through reuse No service can name or access another service's data; it can only make requests for data thru an external API 8

Cloud Computing, Fallacies and Pitfalls, and End of Chapter 1 (Engineering Long Lasting Software 1.8, 1.9, 1.12) David Patterson 9

SaaS Infrastructure? SaaS s 3 demands on infrastructure 1. Communication: allow customers to interact with service 2.Scalability: fluctuations in demand during + new services to add users rapidly 3.Dependability: service and communication continuously available 24x7 10

Clusters Clusters: Commodity computers connected by commodity Ethernet switches 1. More scalable than conventional servers 2. Much cheaper than conventional servers 20X for equivalent vs. largest servers 1. Few operators for 1000s servers Careful selection of identical HW/SW Virtual Machine Monitors simplify operation 1. Dependability via extensive redundancy 11

Warehouse Scale Computers Clusters grew from 1000 servers to 100,000 based on customer demand for SaaS apps Economies of scale pushed down cost of largest datacenter by factors 3X to 8X Purchase, house, operate 100K v. 1K computers Traditional datacenters utilized 10% - 20% Make profit offering pay-as-you-go use at less than your costs for as many computers as you need 12

Utility Computing / Public Cloud Computing Offers computing, storage, communication at pennies per hour + No premium to scale: 1000 computers @ 1 hour = 1 computer @ 1000 hours Illusion of infinite scalability to cloud user As many computers as you can afford Leading examples: Amazon Web Services, Google App Engine, Microsoft Azure 13

2012 AWS Instances & Prices Instance Per Hour Ratio to Small Compute Units Virtual Cores Compute Unit/ Core Memory (GB) Disk (GB) Address Standard Small $0.08 1.0 1.0 1 1.00 1.7 160 32 bit Standard Large $0.32 4.0 4.0 2 2.00 7.5 850 64 bit Standard Extra Large $0.64 8.0 8.0 4 2.00 15.0 1690 64 bit High-Memory Extra Large $0.45 5.9 6.5 2 3.25 17.1 420 64 bit High-Memory Double Extra Large $0.90 14.1 13.0 4 3.25 34.2 850 64 bit High-Memory Quadruple Extra Large $1.80 28.2 26.0 8 3.25 68.4 1690 64 bit High-CPU Medium $0.16 2.0 5.0 2 2.50 1.7 350 32 bit High-CPU Extra Large $0.66 8.0 20.0 8 2.50 7.0 1690 64 bit Cluster Quadruple Extra Large $1.30 15.3 33.5 16 2.09 23.0 1690 64 bit Eight Extra Large $2.40 28.2 88.0 32 2.75 60.5 1690 64 bit 14

Supercomputer for hire Top 500 supercomputer competition 532 Eight Extra Large (@ $2.40/hour), 17000 cores = 240 TeraFLOPS 72 nd /500 supercomputer @ ~$1300 per hour Credit card => can use 1000s computers FarmVille on AWS Prior biggest online game 5M users What if startup had to build datacenter? 4 days =1M; 2 months = 10M; 9 months = 75M 15

IBM Watson for Hire? Jeopardy Champion IBM Watson Hardware: 90 IBM Power 750 servers 3.5 GHz 8 cores/server 90 @~$2.40/hour = ~$200/hour Cost of human lawyer or account For what tasks could AI be as good as highly trained person @ $200/hour? What would this mean for society? 16

Which statements NOT true about SaaS, SOA, and Cloud Computing? Clusters are collections of commodity servers connected by LAN switches The Internet supplies the communication for SaaS Cloud computing uses HW clusters + SW layer using redundancy for dependability Private datacenters could match cost of Warehouse Scale Computers if they just purchased the same type of hardware 17

Fallacies and Pitfalls Fallacy: If a software project is falling behind schedule, catch up by adding people Adding people actual makes it worse! 1.Time for new people to learn about project 2.Communication increases as project grows, which reduces time available get work done Adding manpower to a late software project makes it later. Fred Brooks, Jr. The Mythical Man Month 18

Fallacies and Pitfalls Fallacy: The Agile lifecycle is best for software development Good match for some SW, especially SaaS But not for NASA spaceshots Can learn SW Engineering principles in many ways, and can apply them in many ways, so pick one that matches classroom (Agile/SaaS) Note: you will see new lifecycles in response to new opportunities in your career, so expect to learn new ones 19

Fallacies and Pitfalls Pitfall: Ignoring the cost of software design Since 0 cost to manufacture software, might believe 0 cost to remanufacture the way the customer wants Ignores the cost of design and test (Is cost ~no cost of manufacturing software/data same rationale to pirate data? No one should pay for development, just for manufacturing?) 20

Summary: Engineering SW is More Than Programming (Figure 1.7, Engineering Long Lasting Software by Armando Fox and David Patterson, Beta edition, 2012.) 21