trivadis techevent 2016 java for enterprises in the google cloud by thomas bröll

35
BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH Java for enterprises in the Google cloud Thomas Bröll Trivadis Stuttgart

Upload: trivadis

Post on 08-Jan-2017

65 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA

HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH

Java for enterprises in theGoogle cloud

Thomas BröllTrivadis Stuttgart

Page 2: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Agenda

Java for enterprises in the Google cloud2 9/30/2016

1. Introduction

2. Legal considerations

3. The software architect‘s point of view

4. The services point of view

Page 3: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud3 9/30/2016

Introduction

Page 4: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Introduction

Java for enterprises in the Google cloud4 9/30/2016

Cloud characteristcs

On-demand

Self-service

Broad network access

Pay per use

Shared, pooled resources

Rapid elasticity

Page 5: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud5 9/30/2016

Page 6: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Gartner - IaaS

Java for enterprises in the Google cloud6 9/30/2016

Source: https://www.gartner.com/doc/reprints?id=1-2G2O5FC&ct=150519

Page 7: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Gartner - PaaS

Java for enterprises in the Google cloud7 9/30/2016

https://www.gartner.com/doc/reprints?id=1-2C8JHBP&ct=150325&st=sb

Page 8: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Introduction

Java for enterprises in the Google cloud8 9/30/2016

PaaS = Platform as a Service

Page 9: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud9 9/30/2016

Legal considerations

Page 10: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Service fee

Java for enterprises in the Google cloud10 9/30/2016

Individual metrics for each service

AppEngine: Instances $0.05 / hour = $37/month

Datastore: $0.06 per 100.000 reads, $0.18 per 100.000 writes

Network: $0.12 per GB

Page 11: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Service Level Agreement

Java for enterprises in the Google cloud11 9/30/2016

>= 99.x % Uptime

Service fee refund (percentage)

Downtime definition

• "Downtime" means more than a five percent Error Rate. Downtime is measured

based on server side Error Rate.

• "Downtime Period" means a period of ten consecutive minutes of Downtime.

Intermittent Downtime for a period of less than ten minutes will not be counted

towards any Downtime Periods.

Page 12: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud12 9/30/2016

Page 13: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Gartner - PaaS

Java for enterprises in the Google cloud13 9/30/2016

Global data centers

Private network

Dedicated customer

connections possible

https://www.gartner.com/doc/reprints?id=1-2C8JHBP&ct=150325&st=sb

Page 14: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Google cloud security & privacy

Java for enterprises in the Google cloud15 9/30/2016

https://cloud.google.com/security/compliance

ISO 27001 (Basics, BSI: IT-Grundschutz)

– Re-newed and extended

ISO 27017 (cloud security)

ISO 27018 (cloud privacy)

PCI DSS 3.1 (Payment card industry data security standard)

EU model contract clauses available

Page 15: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Google cloud security & privacy

Java for enterprises in the Google cloud16 9/30/2016

http://www.cloudcomputing-insider.de/10-tipps-fuer-datenschutz-und-datensicherheit-in-

der-cloud-a-543941/

Page 16: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud17 9/30/2016

The software architect‘s point of

view

Page 17: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

The software architect‘s point of view

Java for enterprises in the Google cloud18 9/30/2016

Focus on your application

Scalability enforces new patterns & paradigms

– CAP theorem (consistency, availability, partition tolerance)

– Scalability is enforced (by pricing and load)

The browser & mobile devices are the future platform

Page 18: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

The software architect‘s point of view

Java for enterprises in the Google cloud19 9/30/2016

Re-think application architecture

MicroService applications

Stateless components

Storage patterns

– NoSQL / key-value

– Eventual consistency

Messaging / delayed processing

– Idempotent worker (at least once delivery)

Page 19: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

User Interface

Java for enterprises in the Google cloud20 9/30/2016

Load Balancer

UI ComponentUI

ComponentUI Component

Elastic Load Balancer

Page 20: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

User Interface

Java for enterprises in the Google cloud21 9/30/2016

Load Balancer

UI ComponentUI

ComponentUI Component

Elastic Load Balancer

AppEngine App

Stateless

Component

Pattern !

Page 21: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

App Engine

Java for enterprises in the Google cloud22 9/30/2016

Scales your application on demand, no interaction required

Customers only provide a well-behaved Micro Service

– Large applications can be split into „Services“

Flexible model

– Use whatever you like (Java, Python, Go …. Docker)

– Behave well (ports, lifecycle events)

– Easy transition

Feature-complete!

Page 22: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java @AppEngine

Java for enterprises in the Google cloud24 9/30/2016

Standard: Java 7 & Jetty (Servlet 2.5)

Flexible:

• JEE Microprofile

• Payara

• TomEE

• Wildfly

• …

• Spring Boot

• Dropwizard

Focus on lightweight applications & startup times!

Page 23: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud25 9/30/2016

Page 24: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Processing Component

Java for enterprises in the Google cloud26 9/30/2016

ProcessingComponentProcessing

ComponentProcessingComponent

Elastic queue

Page 25: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Processing Component

Java for enterprises in the Google cloud27 9/30/2016

ProcessingComponentProcessing

ComponentProcessingComponent

Elastic queue

Page 26: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Processing/Messaging options

Java for enterprises in the Google cloud28 9/30/2016

AppEngine

– Push queue

– Pull queue

– Cron jobs

Cloud PubSub

– Publish

– Subscribe

Page 27: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Storage options

Java for enterprises in the Google cloud29 9/30/2016

Cloud SQL

– MySQL

– More or less IaaS-like

Datastore & BigTable

– Document / Key-Value

– No SQL / key-value

Storage

– Store any data

VM storage

Google drive

CDN

Page 28: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Java for enterprises in the Google cloud30 9/30/2016

The services point of view

Page 29: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Well-know Google services

Java for enterprises in the Google cloud31 9/30/2016

Custom Search API

Google applications (Mail, Calender, Drive, Contacts, …)

URL Shortener

Page 30: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Geo services

Java for enterprises in the Google cloud32 9/30/2016

Maps

Routing

Places

Geocoding / reverse geocoding

Distance

Page 31: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Cloud Vision API

Java for enterprises in the Google cloud33 9/30/2016

Image content recognition

– Face recognition

– Mood

OCR

Page 32: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Machine learning

Java for enterprises in the Google cloud34 9/30/2016

Google Predicition API

Analyze natural data

Cross selling recommendations

Up selling

Demand forecast

Fraud detection

Page 33: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Android / mobile

Java for enterprises in the Google cloud35 9/30/2016

Android has the greatest market share for mobile devices

Google is the company behind android development

Android in the google cloud:

Google Cloud Endpoints

– Easy to use API (Android, iOS, JavaScript)

Firebase Cloud Messaging

– Device notification

– Android & iOS

Page 34: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Some notes

Java for enterprises in the Google cloud36 9/30/2016

Google is a slowly moving container ship (at least in the Java world)

AppEngine „flexible model“ is beta,

„Standard“ is stable but not state-of-the-art (ask Google)

Flexible model has no no-cost pricing threshold

HTTP & REST rule the transport layer

Increasing level of open source software

JavaScript first!

Most services require an API key

– Protect it!

Page 35: Trivadis TechEvent 2016 Java for enterprises in the Google cloud by Thomas Bröll

Thomas Bröll

Principal consultant

Tel. +49 711 903 632 305

[email protected]

9/30/2016 Java for enterprises in the Google cloud37