Getting the most out of Spring and App Engine!!

Size: px
Start display at page:

Download "Getting the most out of Spring and App Engine!!"

Transcription

1 Getting the most out of Spring and App Engine!! Chris Ramsdale Product Manager, App Engine Google 2011 SpringOne 2GX All rights reserved. Do not distribute without permission.

2 Whatʼs on tap today? 0 - scaling in 5 mins Going a bit deeper Developing with the Spring Framework Adding relation data in the cloud Performance tweaks Whatʼs next?

3 0 - scaling in 5 mins A quick intro to App Engine

4 Traditional approach LAMP stack Developer (You) 4

5 App Engine to the rescue Easy to build Easy to manage Easy to scale 5

6 Demo: quick start Create a web application using Googleʼs Plugin for Eclipse Run the app locally Make changes Deploy to App Engine Test 6

7 Whatʼs in it for you? Focus on developer productivity So you can build apps Without the infrastructure headaches 7

8 Out of labs... weʼre growing up! Supported product 99.95% uptime guarantee (SLA) Paid operational support Platform certifications Growing fast... 8

9 200,000+ Apps 100,000+ Developers 1.5B Page views / day Memcache Python Runtime HTTPS Java Runtime Task Queues XMPP Appstats Namespaces API High Replication Datastore Channel API Go Runtime ISAE3402 Type II Certification Backends Pull Queues

10 Mobile/game backend... PocketGems 10

11 Web Gaming =

12 Large scale events 32K req/sec 37M pageviews 13M visitors 12

13 Success stories - Khan Academy SALMAN KHAN 13

14 Customer: WebFilings 14

15 Going a bit deeper App Engine features and functionality

16 Extended Language support through JVM Java Scala JRuby (Ruby) Groovy Quercus (PHP) Rhino (JavaScript) Jython (Python) Duke, the Java mascot Copyright Sun Microsystems Inc., all rights reserved. 16

17 Always free to get started Instance hours: 28/day High Replication Datastore: 1G Outgoing Bandwidth: 1G Incoming Bandwidth: 1G Datastore API: 50k free read/write/small Blobstore API: 5G API: 100 recipients XMPP API": 1000 stanzas Channel API: 100 channels opened 17

18 Feature overview Compute Frontends Backends Task Queues Cron Network URL Fetch XMPP Channel API Mail API Storage Datastore Memcache Namespaces Blobstore Cloud SQL Static content Services Images API App Identity Users API MapReduce API Pipeline API Prospective Search API 18

19 Frontends, Backends, Task Queue, Cron Compute Pull (Task) Queues Client Client Client Client 19 App App Engine Engine Frontend Frontend App App Engine Engine Backend Backend Push (Task) Queues / Cron App App Engine App Engine App Frontend Engine Frontend Engine Backend Backend

20 High Replication Datastore (HRD) Storage Schema-less Object datastore Entities & Entity Groups Query engine Standard & custom indexes Atomic transactions Features Highly scalable More distributed as more data is stored Highly reliable Synchronous, multi-datacenter replication Managed 20

21 URL Fetch HTTP/1.1 GET, POST, PUT, HEAD, and DELETE Maximum request deadlines 60s (default 5s): user facing (online) requests 10 minutes: cron, task queue (offline) requests Execution options Synchronous Async 21 Network

22 2011 SpringOne 2GX All rights reserved. Do not distribute without permission. Services

23 Developing with the Spring Framework Building on standards

24 Ensuring Portability Duke, the Java mascot Copyright Sun Microsystems Inc., all rights reserved. 24

25 Demo: simple Hello World Should feel very normal Create an empty web application using Googleʼs Plugin for Eclipse Add Spring dependencies Add controllers Add view Wire up dispatch servlet 25

26 Adding relational data in the cloud Using Google Cloud SQL

27 Google Cloud SQL: overview Highly available, self-managed, hosted SQL storage solution Replicates to multiple geographic regions JDBC compatible Available for Google App Engine applications that are written in Java or Python 27 Duke, the Java mascot Copyright Sun Microsystems Inc., all rights reserved.

28 Google Cloud SQL: features Ability to host your MySQL databases in the cloud Instances up to 10GB (early cap) Synchronous geographic replication Import or export databases using mysqldump Command line tool SQL prompt in the Google APIs Console 28

29 Google Cloud SQL: getting started Development A local MySQL instance/cluster Eclipse App Engine SDK Development app server Production No code changes Easy deployment from Eclipse Running on App Engine Persisting data to Googleʼs Cloud SQL 29

30 Google Cloud SQL: development Install MySQL Configure database/tables/test data Copy JDBC driver into App Engine SDK Add JDBC driver to the run/debug classpath Add the following VM args to your run/debug config: -Drdbms.server=local -Drdbms.driver=com.mysql.jdbc.Driver -Drdbms.url=jdbc:mysql://localhost:3306/testdb?user=root 30

31 Google Cloud SQL: production Sign-up for access Create an instance Enable access from your App Engine apps Deploy from Eclipse Done 31

32 Demo: simple Hello DB 32

33 Going a bit further: Pet Clinic sample Maven import and deploy...right? 33

34 Going a bit further: Pet Clinic sample A few tweaks to your workflow Need to supply similar VM args for local development Remove JMX monitoring Edit jdbc.properties Google Cloud SQL URL App Engine rdms driver Register App Engine JDBC driver 34

35 Performance tweaks Fine tuning your app for production

36 Caching with Memcache 2ms Client Client App App Engine Engine App Frontend App Frontend Engine Engine Backend Backend 20ms 36

37 Caching using standards Free lunch possibility And your users will be happier too Use memcache Only if you care about your users Static resource files Do not consume instance hours HTTP/1.1 caching Cache-Control: public, s-maxage=... Respected by browsers, ISPs and App Engine Saves bandwidth Replace dynamic content with Static content 37

38 Best practices in client-side code Avoid this! Clients all checking in at a specific time of day Spread out load: - Randomize client checkin times And this! Clients retry failures after a fixed interval Avoid a Denials-of-Service (DoS) on your app after a failure: - Use exponential back-off: 1s, 2s, 4s, 8s, 16s, - Use a fuzz factor: randomize retry times 38

39 Best practices in server-side code Efficient resource utilization Reduce instance hours Reduce request latency Use Memcache Datastore/Memcache batch get/put Async URL Fetch, Datastore, Memcache Parallelize RPCs Enable HTTP session async writes Spin up fewer instances Task queue rate and max_concurrent_requests X-AppEngine-FailFast 39

40 Best practices in server-side code Efficient resource utilization Enable concurrent requests Java appengine-web.xml Discounted reserved instances $0.08/hr $0.05/hr Scheduler knobs Max Idle Instances Min Pending Latency 40

41 Enable warming requests Request logs: /_ah/warmup Default behavior Enabled for Java apps All jar files are indexed in memory Initializes your application and filters Servlets marked in <load-on-startup> ServletContextListener filters Custom warmup servlet Override built-in _ah_warmup servlet <servlet> <servlet-name>_ah_warmup</servlet-name> <servlet-class>foo.mywarmupservlet</servletclass> 41

42 Manage 'datastore ops' costs Number of write ops in SDK Fewer indexes & indexed properties fewer write ops Take advantage of query planner improvements Replace queries with keys-only queries (cheaper) fetch-by-key (optimal) datastore cursors (for pagination) 42

43 Manage storage costs Discard stuff you no longer need Entities Indexes Blobs Tasks Drop unwanted indexes Vacuum custom indexes New query planner Explicitly mark properties as unindexed To migrate existing entities, put() again with:» Python: foo = db.stringproperty(indexed=false)» Java: entity.setunindexedproperty( foo, bar ) 43

44 Load testing: Guidelines Test traffic must be representative of real user traffic Ramp over a period of several minutes Don t do this! Nice! 44

45 Load testing: Basic recipe Send steady 5 qps traffic to your site Uncover basic problems, e.g. entity contention on global data Monitor for minutes and expect to see: Stable request latency <1000ms Zero quota denials Low error rate Tasks queues are keeping up No elevated datastore contention Slowly ramp up; increase traffic by 2x Uncover next application bottleneck, if any Repeat until serving desired qps Plan your next feature 45

46 Appstats 46

47 Custom error pages Avoid this: With this: <static-error-handlers> <handler file="default_error.html"/> <handler file="over_quota.html" error-code="over_quota"/> </static-error-handlers> 47

48 Whatʼs new? Latest updates for App Engine users

49 Release New! HRD apps Cross Group (XG) transactions Python 2.7 (experimental) Cloud SQL (preview) Full-Text Search (trusted tester) HRD Migration Tool Higher limits File uploads 10MB 32MB, URLFetch POST 1MB 5MB Frontend requests 30s 60s, URLFetch 10s 60s Max files 3,000 10,000 Other Google Storage File API 49

50 Other recent improvements New! Unlimited blob size Seamless backend config changes SDK eventual consistency simulation Country identification: X-AppEngine-Country Admin console logs in your time zone 50

51 Advanced query planner New! Datastore never requires an exploding index code.google.com/appengine/docs/python/datastore/ queries.html#big_entities_and_exploding_indexes dev_appserver Understands query planner changes Zigzag merge-join queries Will continue scanning for up to 30 sec No more "needs index" errors (although some may timeout) BuildingScalableComplexApps.html 51

52 The old query planner Index(Photo, owner_id, -date) Index(Photo, owner_id, -rating) Index(Photo, owner_id, -comments) Index(Photo, owner_id, -downloads) Index(Photo, size, -date) Index(Photo, size, -rating) Index(Photo, size, -comments) Index(Photo, size, -downloads) Tags Indexes 1 2^6*4 = ^7*4 = ^8*4 = Index(Photo, owner_id, size, -date) Index(Photo, owner_id, size, -rating) Index(Photo, owner_id, size, -comments) Index(Photo, owner_id, size, -downloads) Index(Photo, aspect, coloration, license, owner_id, size, -date) Index(Photo, aspect, coloration, license, owner_id, size, -rating) Index(Photo, aspect, coloration, license, owner_id, size, -comments) Index(Photo, aspect, coloration, license, owner_id, size, -downloads) = 2^(no. of filters) * (no. of different orders) = 2 ^ 6 * 4 = 256 indexes 52

53 The improved query planner Index(Photo, owner_id, -date) Index(Photo, owner_id, -rating) Index(Photo, owner_id, -comments) Index(Photo, owner_id, -downloads) Index(Photo, size, -date) Index(Photo, size, -rating) Index(Photo, size, -comments) Index(Photo, size, -downloads) Index(Photo, license, -date) Index(Photo, license, -rating) Index(Photo, license, -comments) Index(Photo, license, -downloads) Index(Photo, tag, -date) Index(Photo, tag, -rating) Index(Photo, tag, -comments) Index(Photo, tag, -downloads) = (number of filters) * (number of orders) = 6 * 4 = 24 indexes 53

54 Using the new query planner Upgrade to the latest SDK Turn off auto index generation Java: <datastore-indexes autogenerate="false"> Remove unnecessary custom index definitions Java: WEB-INF/datastore-indexes.xml WEB-INF/appengine-generated/datastore-indexes-auto.xml Test your app Deploy to production Judiciously run: appcfg vacuum_indexes 54

55 XG Transactions New! In a single transaction Access 1..5 entity groups - read and/or write Does not provide transactional ancestor-less query Does allow 1..5 separate ancestor queries within transaction Availability Only in HRD apps App Engine release 55

56 Whatʼs next? Upcoming features for App Engine users

57 Coming soon... SLA, custom domain SSL Configurable front-end sizes 57

58 Q&A

59 Resources App Engine SDK Google Plugin for Eclipse Eclipse Sample code checkout 59

60 Thank You! Chris Ramsdale 60

Google App Engine: Java Technology In The Cloud

Google App Engine: Java Technology In The Cloud Google App Engine: Java Technology In The Cloud Toby Reyelts, Max Ross, Don Schwarz Google 1 Goals > Google App Engine > Java on App Engine > The App Engine Datastore > Demo > Questions 2 2 What Is Google

More information

Developing Solutions for Google Cloud Platform (CPD200) Course Agenda

Developing Solutions for Google Cloud Platform (CPD200) Course Agenda Developing Solutions for Google Cloud Platform (CPD200) Course Agenda Module 1: Developing Solutions for Google Cloud Platform Identify the advantages of Google Cloud Platform for solution development

More information

Google GCP-Solution Architects Exam

Google GCP-Solution Architects Exam Volume: 90 Questions Question: 1 Regarding memcache which of the options is an ideal use case? A. Caching data that isn't accessed often B. Caching data that is written more than it's read C. Caching important

More information

Cloud Computing Platform as a Service

Cloud Computing Platform as a Service HES-SO Master of Science in Engineering Cloud Computing Platform as a Service Academic year 2015/16 Platform as a Service Professional operation of an IT infrastructure Traditional deployment Server Storage

More information

Scaling App Engine Applications. Justin Haugh, Guido van Rossum May 10, 2011

Scaling App Engine Applications. Justin Haugh, Guido van Rossum May 10, 2011 Scaling App Engine Applications Justin Haugh, Guido van Rossum May 10, 2011 First things first Justin Haugh Software Engineer Systems Infrastructure jhaugh@google.com Guido Van Rossum Software Engineer

More information

Optimizing Your App Engine App

Optimizing Your App Engine App Optimizing Your App Engine App Marzia Niccolai Spender of GBucks Greg Darke Byte Herder Troy Trimble Professional Expert Agenda Overview Writing applications efficiently Datastore Tips Caching, Caching,

More information

App Engine: Datastore Introduction

App Engine: Datastore Introduction App Engine: Datastore Introduction Part 1 Another very useful course: https://www.udacity.com/course/developing-scalableapps-in-java--ud859 1 Topics cover in this lesson What is Datastore? Datastore and

More information

Developing with Google App Engine

Developing with Google App Engine Developing with Google App Engine Dan Morrill, Developer Advocate Dan Morrill Google App Engine Slide 1 Developing with Google App Engine Introduction Dan Morrill Google App Engine Slide 2 Google App Engine

More information

PaaS Cloud mit Java. Eberhard Wolff, Principal Technologist, SpringSource A division of VMware VMware Inc. All rights reserved

PaaS Cloud mit Java. Eberhard Wolff, Principal Technologist, SpringSource A division of VMware VMware Inc. All rights reserved PaaS Cloud mit Java Eberhard Wolff, Principal Technologist, SpringSource A division of VMware 2009 VMware Inc. All rights reserved Agenda! A Few Words About Cloud! PaaS Platform as a Service! Google App

More information

App Engine MapReduce. Mike Aizatsky 11 May Hashtags: #io2011 #AppEngine Feedback:

App Engine MapReduce. Mike Aizatsky 11 May Hashtags: #io2011 #AppEngine Feedback: App Engine MapReduce Mike Aizatsky 11 May 2011 Hashtags: #io2011 #AppEngine Feedback: http://goo.gl/snv2i Agenda MapReduce Computational Model Mapper library Announcement Technical bits: Files API User-space

More information

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE A Seminar report On Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE SUBMITTED TO: SUBMITTED BY: www.studymafia.org www.studymafia.org Acknowledgement

More information

2. What is Google App Engine. Overview Google App Engine (GAE) is a Platform as a Service (PaaS) cloud computing platform for developing and hosting web applications in Google-managed data centers. Google

More information

Google Plugin for Eclipse

Google Plugin for Eclipse Google Plugin for Eclipse Not just for newbies anymore Miguel Mendez Tech Lead - Google Plugin for Eclipse 1 Overview Background AJAX Google Web Toolkit (GWT) App Engine for Java Plugin Design Principles

More information

Large-Scale Web Applications

Large-Scale Web Applications Large-Scale Web Applications Mendel Rosenblum Web Application Architecture Web Browser Web Server / Application server Storage System HTTP Internet CS142 Lecture Notes - Intro LAN 2 Large-Scale: Scale-Out

More information

the road to cloud native applications Fabien Hermenier

the road to cloud native applications Fabien Hermenier the road to cloud native applications Fabien Hermenier 1 cloud ready applications single-tiered monolithic hardware specific cloud native applications leverage cloud services scalable reliable 2 Agenda

More information

Building Scalable Web Apps with Python and Google Cloud Platform. Dan Sanderson, April 2015

Building Scalable Web Apps with Python and Google Cloud Platform. Dan Sanderson, April 2015 Building Scalable Web Apps with Python and Google Cloud Platform Dan Sanderson, April 2015 June 2015 pre-order now Agenda Introducing GCP & GAE Starting a project with gcloud and Cloud Console Understanding

More information

Cloud Computing. Chapter 3 Platform as a Service (PaaS)

Cloud Computing. Chapter 3 Platform as a Service (PaaS) Cloud Computing Chapter 3 Platform as a Service (PaaS) Learning Objectives Define and describe the PaaS model. Describe the advantages and disadvantages of PaaS solutions. List and describe several real-world

More information

Platform as a Service (PaaS)

Platform as a Service (PaaS) Basics of Cloud Computing Lecture 6 Platform as a Service (PaaS) Satish Narayana Srirama Several slides are taken from Pelle Jakovits Outline Introduction to PaaS Google Cloud Google App Engine Other PaaS

More information

GAE Google App Engine

GAE Google App Engine GAE Google App Engine Prof. Dr. Marcel Graf TSM-ClComp-EN Cloud Computing (C) 2017 HEIG-VD Introduction Google App Engine is a PaaS for building scalable web applications and mobile backends. Makes it

More information

Developing Enterprise Cloud Solutions with Azure

Developing Enterprise Cloud Solutions with Azure Developing Enterprise Cloud Solutions with Azure Java Focused 5 Day Course AUDIENCE FORMAT Developers and Software Architects Instructor-led with hands-on labs LEVEL 300 COURSE DESCRIPTION This course

More information

Copyright 2016 Pivotal. All rights reserved. Cloud Native Design. Includes 12 Factor Apps

Copyright 2016 Pivotal. All rights reserved. Cloud Native Design. Includes 12 Factor Apps 1 Cloud Native Design Includes 12 Factor Apps Topics 12-Factor Applications Cloud Native Design Guidelines 2 http://12factor.net Outlines architectural principles and patterns for modern apps Focus on

More information

PROFESSIONAL. NoSQL. Shashank Tiwari WILEY. John Wiley & Sons, Inc.

PROFESSIONAL. NoSQL. Shashank Tiwari WILEY. John Wiley & Sons, Inc. PROFESSIONAL NoSQL Shashank Tiwari WILEY John Wiley & Sons, Inc. Examining CONTENTS INTRODUCTION xvil CHAPTER 1: NOSQL: WHAT IT IS AND WHY YOU NEED IT 3 Definition and Introduction 4 Context and a Bit

More information

Boost Your Hibernate and Application Performance

Boost Your Hibernate and Application Performance Boost Your Hibernate and Application Performance Presented by: Greg Luck, Founder and CTO Ehcache March 3, 2010 Agenda Intro to Ehcache and Terracotta Code: Scaling Spring Pet Clinic With Hibernate With

More information

Welcome to the New Era of Cloud Computing

Welcome to the New Era of Cloud Computing Welcome to the New Era of Cloud Computing Aaron Kimball The web is replacing the desktop 1 SDKs & toolkits are there What about the backend? Image: Wikipedia user Calyponte 2 Two key concepts Processing

More information

Western Michigan University

Western Michigan University CS-6030 Cloud compu;ng Google App engine Sepideh Mohammadi Summer II 2017 Western Michigan University content Categories of cloud compu;ng Google cloud plaborm Google App Engine Storage technologies Datastore

More information

ForeScout Open Integration Module: Data Exchange Plugin

ForeScout Open Integration Module: Data Exchange Plugin ForeScout Open Integration Module: Data Exchange Plugin Version 3.2.0 Table of Contents About the Data Exchange Plugin... 4 Requirements... 4 CounterACT Software Requirements... 4 Connectivity Requirements...

More information

PHP Development for ClearPath. Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation

PHP Development for ClearPath. Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation PHP Development for ClearPath Session 3028, Tuesday, May 15, 2012, 10:30AM Ron Neubauer, Principal Engineer, Unisys Corporation Topics Introduction Architecture Installation Usage Obtaining the Product

More information

A memcached implementation in Java. Bela Ban JBoss 2340

A memcached implementation in Java. Bela Ban JBoss 2340 A memcached implementation in Java Bela Ban JBoss 2340 AGENDA 2 > Introduction > memcached > memcached in Java > Improving memcached > Infinispan > Demo Introduction 3 > We want to store all of our data

More information

Developing Microsoft Azure Solutions (70-532) Syllabus

Developing Microsoft Azure Solutions (70-532) Syllabus Developing Microsoft Azure Solutions (70-532) Syllabus Cloud Computing Introduction What is Cloud Computing Cloud Characteristics Cloud Computing Service Models Deployment Models in Cloud Computing Advantages

More information

Serverless Architecture Hochskalierbare Anwendungen ohne Server. Sascha Möllering, Solutions Architect

Serverless Architecture Hochskalierbare Anwendungen ohne Server. Sascha Möllering, Solutions Architect Serverless Architecture Hochskalierbare Anwendungen ohne Server Sascha Möllering, Solutions Architect Agenda Serverless Architecture AWS Lambda Amazon API Gateway Amazon DynamoDB Amazon S3 Serverless Framework

More information

Informatica Developer Tips for Troubleshooting Common Issues PowerCenter 8 Standard Edition. Eugene Gonzalez Support Enablement Manager, Informatica

Informatica Developer Tips for Troubleshooting Common Issues PowerCenter 8 Standard Edition. Eugene Gonzalez Support Enablement Manager, Informatica Informatica Developer Tips for Troubleshooting Common Issues PowerCenter 8 Standard Edition Eugene Gonzalez Support Enablement Manager, Informatica 1 Agenda Troubleshooting PowerCenter issues require a

More information

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints Active Endpoints ActiveVOS Platform Architecture ActiveVOS Unique process automation platforms to develop, integrate, and deploy business process applications quickly User Experience Easy to learn, use

More information

Developing Microsoft Azure Solutions (70-532) Syllabus

Developing Microsoft Azure Solutions (70-532) Syllabus Developing Microsoft Azure Solutions (70-532) Syllabus Cloud Computing Introduction What is Cloud Computing Cloud Characteristics Cloud Computing Service Models Deployment Models in Cloud Computing Advantages

More information

Developing Microsoft Azure Solutions

Developing Microsoft Azure Solutions Course 20532C: Developing Microsoft Azure Solutions Course details Course Outline Module 1: OVERVIEW OF THE MICROSOFT AZURE PLATFORM This module reviews the services available in the Azure platform and

More information

Diplomado Certificación

Diplomado Certificación Diplomado Certificación Duración: 250 horas. Horario: Sabatino de 8:00 a 15:00 horas. Incluye: 1. Curso presencial de 250 horas. 2.- Material oficial de Oracle University (e-kit s) de los siguientes cursos:

More information

The new Ehcache and Hibernate Caching SPI Provider

The new Ehcache and Hibernate Caching SPI Provider The new Ehcache 2.0.0 and Hibernate Caching SPI Provider Presented by: Chris Dennis, Software Engineer, Terracotta Inc. May 12, 2010 Agenda Intro to Ehcache and Terracotta Ehcache and Ehcache + Terracotta

More information

PayPal Delivers World Class Customer Service, Worldwide

PayPal Delivers World Class Customer Service, Worldwide PayPal Delivers World Class Customer Service, Worldwide Greg Gates, VP of Enterprise Ops Engineering Ramki Rosanuru, Sr. Engineering Manager-COE PayPal PEGA in PayPal Why we choose PEGA? Bridge the gap

More information

Microservices without the Servers: AWS Lambda in Action

Microservices without the Servers: AWS Lambda in Action Microservices without the Servers: AWS Lambda in Action Dr. Tim Wagner, General Manager AWS Lambda August 19, 2015 Seattle, WA 2015, Amazon Web Services, Inc. or its affiliates. All rights reserved Two

More information

Adobe Experience Manager

Adobe Experience Manager Adobe Experience Manager Extend and Customize Adobe Experience Manager v6.x Student Guide: Volume 1 Contents CHAPTER ONE: BASICS OF THE ARCHITECTURAL STACK... 10 What is Adobe Experience Manager?... 10

More information

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud?

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud? DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing Slide 1 Slide 3 ➀ What is Cloud Computing? ➁ X as a Service ➂ Key Challenges ➃ Developing for the Cloud Why is it called Cloud? services provided

More information

Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda

Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda Module 1: Google Cloud Platform Projects Identify project resources and quotas Explain the purpose of Google Cloud Resource

More information

Deployment Scenario: WebSphere Portal Mashup integration and page builder

Deployment Scenario: WebSphere Portal Mashup integration and page builder Deployment Scenario: WebSphere Portal 6.1.5 Mashup integration and page builder Deployment Scenario: WebSphere Portal 6.1.5 Mashup integration and page builder...1 Abstract...2 Portal Mashup integration

More information

Microsoft Architecting Microsoft Azure Solutions.

Microsoft Architecting Microsoft Azure Solutions. Microsoft 70-535 Architecting Microsoft Azure Solutions https://killexams.com/pass4sure/exam-detail/70-535 QUESTION: 106 Your organization has developed and deployed several Azure App Service Web and API

More information

IBM WebSphere Application Server V4.0. Performance. 10/02/01 Copyright 2001 IBM Corporation WS40ST11.prz Page 248 of of 28

IBM WebSphere Application Server V4.0. Performance. 10/02/01 Copyright 2001 IBM Corporation WS40ST11.prz Page 248 of of 28 IBM WebSphere Application Server V4.0 Performance Page 248 of 401 1 of 28 Performance Enhancements to WebSphere V4.0 Performance Enhancement Overview Dynamic Caching of Servlets/JSPs Performance Monitoring

More information

Azure-persistence MARTIN MUDRA

Azure-persistence MARTIN MUDRA Azure-persistence MARTIN MUDRA Storage service access Blobs Queues Tables Storage service Horizontally scalable Zone Redundancy Accounts Based on Uri Pricing Calculator Azure table storage Storage Account

More information

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate,

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate, Microservices Chaos Kontrolle mit Kubernetes Robert Kubis - Developer Advocate, Google @hostirosti About me Robert Kubis Developer Advocate Google Cloud Platform London, UK hostirosti github.com/hostirosti

More information

JELASTIC PLATFORM-AS-INFRASTRUCTURE

JELASTIC PLATFORM-AS-INFRASTRUCTURE JELASTIC PLATFORM-AS-INFRASTRUCTURE Jelastic provides enterprise cloud software that redefines the economics of cloud deployment and management. We deliver Platform-as-Infrastructure: bringing together

More information

Installing and Configuring VMware vrealize Orchestrator

Installing and Configuring VMware vrealize Orchestrator Installing and Configuring VMware vrealize Orchestrator vrealize Orchestrator 6.0.1 This document supports the version of each product listed and supports all subsequent versions until the document is

More information

User Manual. Admin Report Kit for IIS 7 (ARKIIS)

User Manual. Admin Report Kit for IIS 7 (ARKIIS) User Manual Admin Report Kit for IIS 7 (ARKIIS) Table of Contents 1 Admin Report Kit for IIS 7... 1 1.1 About ARKIIS... 1 1.2 Who can Use ARKIIS?... 1 1.3 System requirements... 2 1.4 Technical Support...

More information

Improve Web Application Performance with Zend Platform

Improve Web Application Performance with Zend Platform Improve Web Application Performance with Zend Platform Shahar Evron Zend Sr. PHP Specialist Copyright 2007, Zend Technologies Inc. Agenda Benchmark Setup Comprehensive Performance Multilayered Caching

More information

Scalability of web applications

Scalability of web applications Scalability of web applications CSCI 470: Web Science Keith Vertanen Copyright 2014 Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing

More information

Azure Highlights. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Azure Highlights. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region Azure Highlights Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region IaaS vs PaaS Introduction to Microsoft Azure IaaS, PaaS and SaaS Self-Service Provisioning Global

More information

Developing Microsoft Azure Solutions (70-532) Syllabus

Developing Microsoft Azure Solutions (70-532) Syllabus Developing Microsoft Azure Solutions (70-532) Syllabus Cloud Computing Introduction What is Cloud Computing Cloud Characteristics Cloud Computing Service Models Deployment Models in Cloud Computing Advantages

More information

Cloud Computing. Chapter 3 Platform as a Service (PaaS)

Cloud Computing. Chapter 3 Platform as a Service (PaaS) Cloud Computing Chapter 3 Platform as a Service (PaaS) Learning Objectives Define and describe the PaaS model. Describe the advantages and disadvantages of PaaS solutions. List and describe several real-world

More information

ForeScout CounterACT. Configuration Guide. Version 3.4

ForeScout CounterACT. Configuration Guide. Version 3.4 ForeScout CounterACT Open Integration Module: Data Exchange Version 3.4 Table of Contents About the Data Exchange Module... 4 About Support for Dual Stack Environments... 4 Requirements... 4 CounterACT

More information

Developing with the Cloud

Developing with the Cloud Developing with the Cloud Aben Kovoor Developer & Platform Group Microsoft Corporation Middle East & Africa Developer & Platform Group SESSION GOALS A brief overview of the history and our customer challenges

More information

More on Testing and Large Scale Web Apps

More on Testing and Large Scale Web Apps More on Testing and Large Scale Web Apps Testing Functionality Tests - Unit tests: E.g. Mocha - Integration tests - End-to-end - E.g. Selenium - HTML CSS validation - forms and form validation - cookies

More information

AWS Lambda: Event-driven Code in the Cloud

AWS Lambda: Event-driven Code in the Cloud AWS Lambda: Event-driven Code in the Cloud Dean Bryen, Solutions Architect AWS Andrew Wheat, Senior Software Engineer - BBC April 15, 2015 London, UK 2015, Amazon Web Services, Inc. or its affiliates.

More information

DATABASE SYSTEMS. Database programming in a web environment. Database System Course,

DATABASE SYSTEMS. Database programming in a web environment. Database System Course, DATABASE SYSTEMS Database programming in a web environment Database System Course, 2016-2017 AGENDA FOR TODAY The final project Advanced Mysql Database programming Recap: DB servers in the web Web programming

More information

BEYOND CLOUD HOSTING. Andrew Melck, Regional Manager DACH,

BEYOND CLOUD HOSTING. Andrew Melck, Regional Manager DACH, BEYOND CLOUD HOSTING Andrew Melck, Regional Manager DACH, Platform.sh @drewmelck Once upon a time When is flying dangerous? Change and stability were a contradiction At takeoff and landing. In the air,

More information

Edge Foundational Training

Edge Foundational Training Edge Foundational Training Give your team the tools to get up and running with Edge Edge Foundational Training provides the tools and information needed to start using Edge whether in the cloud or on premises.

More information

Sophos Mobile. server deployment guide. Product Version: 8.1

Sophos Mobile. server deployment guide. Product Version: 8.1 Sophos Mobile server deployment guide Product Version: 8.1 Contents About this guide... 1 Sizing considerations... 2 Architecture examples...6 Ports and protocols... 9 Usage scenarios for the standalone

More information

Snapt Accelerator Manual

Snapt Accelerator Manual Snapt Accelerator Manual Version 2.0 pg. 1 Contents Chapter 1: Introduction... 3 Chapter 2: General Usage... 3 Accelerator Dashboard... 4 Standard Configuration Default Settings... 5 Standard Configuration

More information

Cloud Computing. DB Special Topics Lecture (10/5/2012) Kyle Hale Maciej Swiech

Cloud Computing. DB Special Topics Lecture (10/5/2012) Kyle Hale Maciej Swiech Cloud Computing DB Special Topics Lecture (10/5/2012) Kyle Hale Maciej Swiech Managing servers isn t for everyone What are some prohibitive issues? (we touched on these last time) Cost (initial/operational)

More information

Persistence Performance Tips

Persistence Performance Tips Persistence Performance Tips Dan Bunker Training Overview Persistence Performance Overview Database Performance Tips JPA Performance Tips Spring JDBC Performance Tips Other Tips Prerequisites Java 6+,

More information

Installing and Configuring VMware vcenter Orchestrator. vrealize Orchestrator 5.5.2

Installing and Configuring VMware vcenter Orchestrator. vrealize Orchestrator 5.5.2 Installing and Configuring VMware vcenter Orchestrator vrealize Orchestrator 5.5.2 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have

More information

Using and Developing with Azure. Joshua Drew

Using and Developing with Azure. Joshua Drew Using and Developing with Azure Joshua Drew Visual Studio Microsoft Azure X-Plat ASP.NET Visual Studio - Every App Our vision Every App Every Developer .NET and mobile development Desktop apps - WPF Universal

More information

Architecting for the.

Architecting for the. Architecting for the Cloud @axelfontaine About Axel Fontaine Founder and CEO of Boxfuse Over 15 years industry experience Continuous Delivery expert Regular speaker at tech conferences JavaOne RockStar

More information

Creating a Hybrid Gateway for API Traffic. Ed Julson API Platform Product Marketing TIBCO Software

Creating a Hybrid Gateway for API Traffic. Ed Julson API Platform Product Marketing TIBCO Software Creating a Hybrid Gateway for API Traffic Ed Julson API Platform Product Marketing TIBCO Software Housekeeping Webinar Recording Today s webinar is being recorded and a link to the recording will be emailed

More information

Backend Development. SWE 432, Fall Web Application Development

Backend Development. SWE 432, Fall Web Application Development Backend Development SWE 432, Fall 2018 Web Application Development Review: Async Programming Example 1 second each Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy

More information

WooCommerce izettle Documentation

WooCommerce izettle Documentation WooCommerce izettle Documentation Installation 2 System requirements 2 Downloading and installing the plugin 2 Getting a license key 3 Connecting to izettle 3 Getting started 4 The plugin settings page

More information

Heroku. Rimantas Kybartas

Heroku. Rimantas Kybartas Heroku Rimantas Kybartas Salesforce platform (PaaS) Facts about Heroku Has been in development since June 2007, 2010 acquired by Salesforce Open platform Languages and frameworks: Ruby and Rails Node.js

More information

Using the Horizon vrealize Orchestrator Plug-In

Using the Horizon vrealize Orchestrator Plug-In Using the Horizon vrealize Orchestrator Plug-In VMware Horizon 6 version 6.2.3, VMware Horizon 7 versions 7.0.3 and later Modified on 4 JAN 2018 VMware Horizon 7 7.4 You can find the most up-to-date technical

More information

GroupWise Architecture and Best Practices. WebAccess. Kiran Palagiri Team Lead GroupWise WebAccess

GroupWise Architecture and Best Practices. WebAccess. Kiran Palagiri Team Lead GroupWise WebAccess GroupWise Architecture and Best Practices WebAccess Kiran Palagiri Team Lead GroupWise WebAccess kpalagiri@novell.com Ed Hanley Senior Architect ed.hanley@novell.com Agenda Kiran Palagiri Architectural

More information

ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS

ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS Dr Adnene Guabtni, Senior Research Scientist, NICTA/Data61, CSIRO Adnene.Guabtni@csiro.au EC2 S3 ELB RDS AMI

More information

Kubernetes The Path to Cloud Native

Kubernetes The Path to Cloud Native Kubernetes The Path to Cloud Native Eric Brewer VP, Infrastructure @eric_brewer August 28, 2015 ACM SOCC Cloud Na*ve Applica*ons Middle of a great transition unlimited ethereal resources in the Cloud an

More information

Connect and Transform Your Digital Business with IBM

Connect and Transform Your Digital Business with IBM Connect and Transform Your Digital Business with IBM 1 MANAGEMENT ANALYTICS SECURITY MobileFirst Foundation will help deliver your mobile apps faster IDE & Tools Mobile App Builder Development Framework

More information

MySQL & NoSQL: The Best of Both Worlds

MySQL & NoSQL: The Best of Both Worlds MySQL & NoSQL: The Best of Both Worlds Mario Beck Principal Sales Consultant MySQL mario.beck@oracle.com 1 Copyright 2012, Oracle and/or its affiliates. All rights Safe Harbour Statement The following

More information

20532D: Developing Microsoft Azure Solutions

20532D: Developing Microsoft Azure Solutions 20532D: Developing Microsoft Azure Solutions Course Details Course Code: Duration: Notes: 20532D 5 days Elements of this syllabus are subject to change. About this course This course is intended for students

More information

Java EE 6 Web Profile Leader 2011 Roadmap

Java EE 6 Web Profile Leader 2011 Roadmap Java EE 6 Web Profile Leader 2011 Roadmap CAUCHO TECHNOLOGY Caucho s relentless quest for performance and reliability paved the way for Resin to be a leading global Open Source Java application server

More information

Techno Expert Solutions

Techno Expert Solutions Course Content of Microsoft Windows Azzure Developer: Course Outline Module 1: Overview of the Microsoft Azure Platform Microsoft Azure provides a collection of services that you can use as building blocks

More information

Installing and Configuring VMware vcenter Orchestrator

Installing and Configuring VMware vcenter Orchestrator Installing and Configuring VMware vcenter Orchestrator vcenter Orchestrator 5.5.2 This document supports the version of each product listed and supports all subsequent versions until the document is replaced

More information

Distributed Architectures & Microservices. CS 475, Spring 2018 Concurrent & Distributed Systems

Distributed Architectures & Microservices. CS 475, Spring 2018 Concurrent & Distributed Systems Distributed Architectures & Microservices CS 475, Spring 2018 Concurrent & Distributed Systems GFS Architecture GFS Summary Limitations: Master is a huge bottleneck Recovery of master is slow Lots of success

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

Agenda. AWS Database Services Traditional vs AWS Data services model Amazon RDS Redshift DynamoDB ElastiCache

Agenda. AWS Database Services Traditional vs AWS Data services model Amazon RDS Redshift DynamoDB ElastiCache Databases on AWS 2017 Amazon Web Services, Inc. and its affiliates. All rights served. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon Web Services,

More information

At Course Completion Prepares you as per certification requirements for AWS Developer Associate.

At Course Completion Prepares you as per certification requirements for AWS Developer Associate. [AWS-DAW]: AWS Cloud Developer Associate Workshop Length Delivery Method : 4 days : Instructor-led (Classroom) At Course Completion Prepares you as per certification requirements for AWS Developer Associate.

More information

JBoss DNA. Randall Hauch Principal Software Engineer JBoss Data Services

JBoss DNA. Randall Hauch Principal Software Engineer JBoss Data Services JBoss DNA Randall Hauch Principal Software Engineer JBoss Data Services 1 JBoss DNA New project A few months old http://labs.jboss.org/dna Prior repository experience and IP MetaMatrix Repository Drools

More information

Novell Operations Center

Novell Operations Center AUTHORIZED DOCUMENTATION Dashboard Guide Novell Operations Center 5.0 September 30, 2011 www.novell.com Legal Notices Novell, Inc., makes no representations or warranties with respect to the contents or

More information

COPYRIGHTED MATERIAL

COPYRIGHTED MATERIAL Introduction xxiii Chapter 1: Apache Tomcat 1 Humble Beginnings: The Apache Project 2 The Apache Software Foundation 3 Tomcat 3 Distributing Tomcat: The Apache License 4 Comparison with Other Licenses

More information

Website Performance Testing. ebook

Website Performance Testing. ebook Website Performance Testing Like any software product, your website or web application requires thorough testing before it goes live to ensure a quality user experience. Web users are accustomed to a high

More information

NoSQL & Firebase. SWE 432, Fall Web Application Development

NoSQL & Firebase. SWE 432, Fall Web Application Development NoSQL & Firebase SWE 432, Fall 2018 Web Application Development Review: Nouns vs. Verbs URIs should hierarchically identify nouns describing resources that exist Verbs describing actions that can be taken

More information

AWS Lambda. 1.1 What is AWS Lambda?

AWS Lambda. 1.1 What is AWS Lambda? Objectives Key objectives of this chapter Lambda Functions Use cases The programming model Lambda blueprints AWS Lambda 1.1 What is AWS Lambda? AWS Lambda lets you run your code written in a number of

More information

Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro

Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro Contents: Introduction SocketPro ways for resilient, responsive and scalable web applications Vertical scalability o

More information

High Availability Distributed (Micro-)services. Clemens Vasters Microsoft

High Availability Distributed (Micro-)services. Clemens Vasters Microsoft High Availability Distributed (Micro-)services Clemens Vasters Microsoft Azure @clemensv ice Microsoft Azure services I work(-ed) on. Notification Hubs Service Bus Event Hubs Event Grid IoT Hub Relay Mobile

More information

Introduction to MySQL. Database Systems

Introduction to MySQL. Database Systems Introduction to MySQL Database Systems 1 Agenda Bureaucracy Database architecture overview SSH Tunneling Intro to MySQL Comments on homework 2 Homework #1 Submission date is on the website.. (No late arrivals

More information

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo Document Sub Title Yotpo Technical Overview 07/18/2016 2015 Yotpo Contents Introduction... 3 Yotpo Architecture... 4 Yotpo Back Office (or B2B)... 4 Yotpo On-Site Presence... 4 Technologies... 5 Real-Time

More information

Contents. Getting Set Up Contents 2

Contents. Getting Set Up Contents 2 Getting Set Up Contents 2 Contents Getting Set Up... 3 Best Practices...3 Installing the JAR File... 3 Configuring Community Manager Reports...4 Configure the Analytics Database...4 Enable the Analytics

More information

Next-Generation Cloud Platform

Next-Generation Cloud Platform Next-Generation Cloud Platform Jangwoo Kim Jun 24, 2013 E-mail: jangwoo@postech.ac.kr High Performance Computing Lab Department of Computer Science & Engineering Pohang University of Science and Technology

More information

foreword xvii preface xix acknowledgments xxi about this book xxiv about the title xxviii about the cover illustration

foreword xvii preface xix acknowledgments xxi about this book xxiv about the title xxviii about the cover illustration contents foreword xvii preface xix acknowledgments xxi about this book xxiv about the title xxviii about the cover illustration xxix PART 1 INTRODUCING GRAILS... 1 1 Grails in a hurry... 3 1.1 Why Grails?

More information

Databricks, an Introduction

Databricks, an Introduction Databricks, an Introduction Chuck Connell, Insight Digital Innovation Insight Presentation Speaker Bio Senior Data Architect at Insight Digital Innovation Focus on Azure big data services HDInsight/Hadoop,

More information