SlideShare a Scribd company logo
1 of 65
S U M M I T
SYDNEY
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS for Java developers in 2019
James Ousby
Solutions Architect
Amazon Web Services
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Amazon Corretto
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Amazon Corretto
Execution environments
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Amazon has a long and deep history
with Java. I’m thrilled to see the work
of our internal mission-critical Java
team being made available to the rest
of the world.”
James Gosling
Distinguished Engineer, Amazon Web Services
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Amazon Corretto
Amazon supported distribution
of OpenJDK
Run internally on thousand of
production services
Multiplatform
Amazon Linux 2, Windows, MacOS,
Ubuntu, RHEL, CentOS, SUSE, Docker
No cost
Distributed under open source license
Long term support
Corretto 8 until Jun 2023
Corretto 11 until (at least) Aug 2024
All patches and enhancements
up streamed to OpenJDK
Open source
https://github.com/corretto
https://aws.amazon.com/corretto
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm
Make it easier to develop on AWS
Open source
https://aws.amazon.com/intellij
Initial focus
AWS Lambda
AWS SAM CLI integration
Local debugging
Serverless application support
Basic resource / credentials
management
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS SDK for Java 2.0
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
SnsAsyncClient.builder()
.region(Region.US_WEST_2)
.credentialsProvider(ProfileCredentialsProvider.create())
.build();
SnsAsyncClient.builder()
.region(Region.US_WEST_2)
.overideConfiguration(
ClientOverrideConfiguration.builder()
.apiCallTimeout(Duration.ofSeconds(5)
.build())
.build();
SnsAsyncClient.builder()
.region(Region.US_WEST_2)
.overideConfiguration(o -> o.apiCallTimeout(Duration.ofSeconds(5)))
.build();
AWS SDK for Java 2.0
Core tenets
Non-blocking asynchronous service clients
Immutability through builder pattern
Pluggable HTTP clients
Consumer builder pattern
SnsAsyncClient.create()SnsAsyncClient.builder()
.region(Region.US_WEST_2)
.httpClient(UrlConnectionHttpClient.create())
.build();
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS SDK for Java 2.0
Other callout features
Modularised (as in Java 9 Modules – Project Jigsaw)
Endpoint discovery
DynamoDBClient.builder()
.region(Region.US_WEST_2)
.enableEndpointDiscovery()
.build();
<service>.<region>.amazonaws.comdynamodb.ap-southeast-2.amazonaws.commyid2.dynamodb.ap-southeast-2.amazonaws.com
myid1.dynamodb.ap-southeast-2.amazonaws.com
myid3.dynamodb.ap-southeast-2.amazonaws.com
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS SDK for Java 2.0
Other callout features
Modularised (as in Java 9 Modules – Project Jigsaw)
Endpoint discovery
HTTP/2 event streaming
Fully non blocking HTTP/2 clients
Bi-directional real-time streaming responses
Reactive streams support
Asynchronous stream processing with non-blocking back pressure
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS CDK
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS CDK
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
The journey to AWS CDK
“CloudFormation JSON / YAML as an intermediary
format like bytecode on the JVM?”
2006 – Provision via API
2010 – Provision via AWS SDK for Java
2010 – Provision via CloudFormation
2018 – Provision via AWS CDK generated CloudFormation
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS CDK example
Amazon Simple
Notification Service
Stack
Amazon Simple
Queue Service
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CDK example
Queue queue = new Queue(this, "Queue", QueueProps.builder()
.withVisibilityTimeoutSec(300)
.build());
Topic topic = new Topic(this, "Topic", TopicProps.builder()
.withDisplayName("Some Amazing Topic")
.build());
topic.subscribeQueue(queue);
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS CDK example
{
"Resources": {
"Queue4A7E3555": {
"Type": "AWS::SQS::Queue",
"Properties": { "VisibilityTimeout": 300 }
},
"QueuePolicy25439813": {
"Type": "AWS::SQS::QueuePolicy",
"Properties": {
"PolicyDocument": {
"Statement": [
{
"Action": "sqs:SendMessage",
"Condition": {
"ArnEquals": {
"aws:SourceArn": { "Ref": "TopicBFC7AF6E" }
}
},
"Effect": "Allow",
"Principal": { "Service": "sns.amazonaws.com" },
"Resource": {
"Fn::GetAtt": [ "Queue4A7E3555", "Arn" ]
}
}
],
"Version": "2012-10-17"
},
"Queues": [{ "Ref": "Queue4A7E3555" }]
}
},
"TopicBFC7AF6E": {
"Type": "AWS::SNS::Topic",
"Properties": {
"DisplayName": "Some Amazing Topic"
}
},
"TopicQueueSubscription2D098ED4": {
"Type": "AWS::SNS::Subscription",
"Properties": {
"Endpoint": {
"Fn::GetAtt": [ "Queue4A7E3555", "Arn" ]
},
"Protocol": "sqs",
"TopicArn": { "Ref": "TopicBFC7AF6E" }
}
}
}
}
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CDK example
Queue queue = new Queue(this, "Queue", QueueProps.builder()
.withVisibilityTimeoutSec(300)
.build());
Topic topic = new Topic(this, "Topic", TopicProps.builder()
.withDisplayName("Some Amazing Topic")
.build());
topic.subscribeQueue(queue);
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS CDK example
{
"Resources": {
"Queue4A7E3555": {
"Type": "AWS::SQS::Queue",
"Properties": { "VisibilityTimeout": 300 }
},
"QueuePolicy25439813": {
"Type": "AWS::SQS::QueuePolicy",
"Properties": {
"PolicyDocument": {
"Statement": [
{
"Action": "sqs:SendMessage",
"Condition": {
"ArnEquals": {
"aws:SourceArn": { "Ref": "TopicBFC7AF6E" }
}
},
"Effect": "Allow",
"Principal": { "Service": "sns.amazonaws.com" },
"Resource": {
"Fn::GetAtt": [ "Queue4A7E3555", "Arn" ]
}
}
],
"Version": "2012-10-17"
},
"Queues": [{ "Ref": "Queue4A7E3555" }]
}
},
"TopicBFC7AF6E": {
"Type": "AWS::SNS::Topic",
"Properties": {
"DisplayName": "Some Amazing Topic"
}
},
"TopicQueueSubscription2D098ED4": {
"Type": "AWS::SNS::Subscription",
"Properties": {
"Endpoint": {
"Fn::GetAtt": [ "Queue4A7E3555", "Arn" ]
},
"Protocol": "sqs",
"TopicArn": { "Ref": "TopicBFC7AF6E" }
}
}
}
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Cloud Development Kit (AWS CDK)
Higher level abstractions
Object oriented & extensible
Native IDE support (it’s just code)
Java, Javascript, Typescript, .NET
Open Source
https://github.com/awslabs/aws-cdk
Currently in Developer Preview
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
Execution
environments
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
AWS Java ecosystem
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Performance
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Dependency caching
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Summary
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
A project wish list (devops)
Pipeline as code
Infrastructure as code
Isolation
Everything in the same
language as my application
Pipelines are highly available
and performant
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
A project wish list (application build)
(Serverless) Performance on
par with a more long lived
JVM workload
All underpinned by a JVM that
is dependable with free long
term support
Functional programming
friendly SDK’s
(Serverless) Great local
development experience
(debugging and IDE support)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Pet Clinic – Spring Boot example app
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Environment Architecture
This is the simplistic view of what
we would like
A load balancer, some web servers
and a database
AWS Cloud
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Environment Architecture
Things are not quite so simple
when it comes to deployment.
AWS gives you a lot of control
over the wider environment
Can AWS CDK help keep things
simple?
AWS Cloud
VPC
Availability Zone 1 Availability Zone 2 Availability Zone 3
Auto Scaling group
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Pipeline Architecture
Source Stage
Retrieve source from Github
Build Stage
Maven build (mvn package)
Create petclinic.jar
Run CDK to provision or
update environment
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Pipeline Architecture
What do I mean by isolation? Devops Account Prod Account
Non Prod Account
PetClinic Pipeline
PetClinic Staging
PetClinic Prod
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Content links
Amazon Corretto
https://aws.amazon.com/corretto/
AWS Toolkit for IntelliJ
https://aws.amazon.com/intellij
AWS Cloud Development Kit (AWS CDK)
https://github.com/awslabs/aws-cdk
AWS CDK demo + lab
https://github.com/jousby/aws-java-appdev-lab
https://github.com/jousby/aws-buildbox
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Related breakouts
Enhancing your Developer eXperience on AWS
Derek Bingham
Pro tips for builders on AWS
Gabe Hollombe
Thank you!
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
James Ousby
joousby@amazon.com

More Related Content

What's hot

서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019
서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019 서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019
서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019 Amazon Web Services Korea
 
AWSome Day - Madrid, July 23rd 2014
AWSome Day - Madrid, July 23rd 2014AWSome Day - Madrid, July 23rd 2014
AWSome Day - Madrid, July 23rd 2014Amazon Web Services
 
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic SessionAmazon Web Services Japan
 
AWS SSA Webinar 7 - Getting Started on AWS
AWS SSA Webinar 7 - Getting Started on AWSAWS SSA Webinar 7 - Getting Started on AWS
AWS SSA Webinar 7 - Getting Started on AWSCobus Bernard
 
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...Amazon Web Services Japan
 
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced SessionAmazon Web Services Japan
 
20190703 AWS Black Belt Online Seminar Amazon MQ
20190703 AWS Black Belt Online Seminar Amazon MQ20190703 AWS Black Belt Online Seminar Amazon MQ
20190703 AWS Black Belt Online Seminar Amazon MQAmazon Web Services Japan
 
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンスAmazon Web Services Japan
 
DevConfZA 2020 : Automating your cloud: What are the building blocks
DevConfZA 2020 : Automating your cloud: What are the building blocksDevConfZA 2020 : Automating your cloud: What are the building blocks
DevConfZA 2020 : Automating your cloud: What are the building blocksCobus Bernard
 
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019Amazon Web Services Korea
 
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化Amazon Web Services Japan
 
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS Summit
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS SummitDeveloping Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS Summit
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS SummitAmazon Web Services
 
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...Amazon Web Services Japan
 
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習Amazon Web Services Japan
 
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...Cobus Bernard
 
AWS Startup Garage - Building your MVP on AWS
AWS Startup Garage - Building your MVP on AWSAWS Startup Garage - Building your MVP on AWS
AWS Startup Garage - Building your MVP on AWSCobus Bernard
 
20200714 AWS Black Belt Online Seminar Amazon Neptune
20200714 AWS Black Belt Online Seminar Amazon Neptune20200714 AWS Black Belt Online Seminar Amazon Neptune
20200714 AWS Black Belt Online Seminar Amazon NeptuneAmazon Web Services Japan
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)Amazon Web Services Japan
 
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...Amazon Web Services Korea
 

What's hot (20)

서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019
서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019 서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019
서버리스 기반 콘텐츠 추천 서비스 만들기 - 이상현, Vingle :: AWS Summit Seoul 2019
 
AWSome Day - Madrid, July 23rd 2014
AWSome Day - Madrid, July 23rd 2014AWSome Day - Madrid, July 23rd 2014
AWSome Day - Madrid, July 23rd 2014
 
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
20190206 AWS Black Belt Online Seminar Amazon SageMaker Basic Session
 
AWS SSA Webinar 7 - Getting Started on AWS
AWS SSA Webinar 7 - Getting Started on AWSAWS SSA Webinar 7 - Getting Started on AWS
AWS SSA Webinar 7 - Getting Started on AWS
 
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
 
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session
20190213 AWS Black Belt Online Seminar Amazon SageMaker Advanced Session
 
20190703 AWS Black Belt Online Seminar Amazon MQ
20190703 AWS Black Belt Online Seminar Amazon MQ20190703 AWS Black Belt Online Seminar Amazon MQ
20190703 AWS Black Belt Online Seminar Amazon MQ
 
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2 スポットインスタンス
 
DevConfZA 2020 : Automating your cloud: What are the building blocks
DevConfZA 2020 : Automating your cloud: What are the building blocksDevConfZA 2020 : Automating your cloud: What are the building blocks
DevConfZA 2020 : Automating your cloud: What are the building blocks
 
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
마이크로서비스를 위한 App Mesh & Cloud Map - 김세호 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
 
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
 
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS Summit
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS SummitDeveloping Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS Summit
Developing Intelligent Robots with AWS RoboMaker - SVC205 - Anaheim AWS Summit
 
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
 
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
 
AWS Lambda@Edge でできること!
AWS Lambda@Edge でできること!AWS Lambda@Edge でできること!
AWS Lambda@Edge でできること!
 
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...
2019-11-05 AWS Pretoria Meetup - Setting up your first environment and adding...
 
AWS Startup Garage - Building your MVP on AWS
AWS Startup Garage - Building your MVP on AWSAWS Startup Garage - Building your MVP on AWS
AWS Startup Garage - Building your MVP on AWS
 
20200714 AWS Black Belt Online Seminar Amazon Neptune
20200714 AWS Black Belt Online Seminar Amazon Neptune20200714 AWS Black Belt Online Seminar Amazon Neptune
20200714 AWS Black Belt Online Seminar Amazon Neptune
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
 
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
AWS Lambda 내부 동작 방식 및 활용 방법 자세히 살펴 보기 - 김일호 솔루션즈 아키텍트 매니저, AWS :: AWS Summit ...
 

Similar to AWS Java Ecosystem Execution Environments

AWS Summit Singapore 2019 | Microsoft DevOps on AWS
AWS Summit Singapore 2019 | Microsoft DevOps on AWSAWS Summit Singapore 2019 | Microsoft DevOps on AWS
AWS Summit Singapore 2019 | Microsoft DevOps on AWSAWS Summits
 
Architecting security and governance through policy guardrails in Amazon EKS ...
Architecting security and governance through policy guardrails in Amazon EKS ...Architecting security and governance through policy guardrails in Amazon EKS ...
Architecting security and governance through policy guardrails in Amazon EKS ...Amazon Web Services
 
Enhancing Your Developer eXperience on AWS - AWS Summit Sydney
Enhancing Your Developer eXperience on AWS - AWS Summit SydneyEnhancing Your Developer eXperience on AWS - AWS Summit Sydney
Enhancing Your Developer eXperience on AWS - AWS Summit SydneyAmazon Web Services
 
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit Sydney
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit SydneyIntegrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit Sydney
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit SydneyAmazon Web Services
 
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS Summit
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS SummitGetting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS Summit
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS SummitAmazon Web Services
 
Security at the speed of cloud: How to think about it & how you can do it now...
Security at the speed of cloud: How to think about it & how you can do it now...Security at the speed of cloud: How to think about it & how you can do it now...
Security at the speed of cloud: How to think about it & how you can do it now...Amazon Web Services
 
Continuous Delivery on AWS with Zero Downtime
Continuous Delivery on AWS with Zero DowntimeContinuous Delivery on AWS with Zero Downtime
Continuous Delivery on AWS with Zero DowntimeCasey Lee
 
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...Amazon Web Services
 
20190318 Amazon EC2 スポットインスタンス再入門
20190318 Amazon EC2 スポットインスタンス再入門20190318 Amazon EC2 スポットインスタンス再入門
20190318 Amazon EC2 スポットインスタンス再入門Amazon Web Services Japan
 
DevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudDevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudCobus Bernard
 
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...Amazon Web Services
 
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...Mani Chandrasekaran
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation Amazon Web Services Japan
 
AWSome Day Bethesda - February 2019
AWSome Day Bethesda - February 2019AWSome Day Bethesda - February 2019
AWSome Day Bethesda - February 2019Amazon Web Services
 
AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...Cobus Bernard
 
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...Amazon Web Services
 
AWS DevDay Cologne - Automating building blocks choices you will face with co...
AWS DevDay Cologne - Automating building blocks choices you will face with co...AWS DevDay Cologne - Automating building blocks choices you will face with co...
AWS DevDay Cologne - Automating building blocks choices you will face with co...Cobus Bernard
 
From Code to a Running Container | AWS Floor28
From Code to a Running Container | AWS Floor28From Code to a Running Container | AWS Floor28
From Code to a Running Container | AWS Floor28Amazon Web Services
 

Similar to AWS Java Ecosystem Execution Environments (20)

AWS Summit Singapore 2019 | Microsoft DevOps on AWS
AWS Summit Singapore 2019 | Microsoft DevOps on AWSAWS Summit Singapore 2019 | Microsoft DevOps on AWS
AWS Summit Singapore 2019 | Microsoft DevOps on AWS
 
Architecting security and governance through policy guardrails in Amazon EKS ...
Architecting security and governance through policy guardrails in Amazon EKS ...Architecting security and governance through policy guardrails in Amazon EKS ...
Architecting security and governance through policy guardrails in Amazon EKS ...
 
Enhancing Your Developer eXperience on AWS - AWS Summit Sydney
Enhancing Your Developer eXperience on AWS - AWS Summit SydneyEnhancing Your Developer eXperience on AWS - AWS Summit Sydney
Enhancing Your Developer eXperience on AWS - AWS Summit Sydney
 
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit Sydney
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit SydneyIntegrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit Sydney
Integrate Your Favourite Microsoft DevOps Tools with AWS - AWS Summit Sydney
 
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS Summit
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS SummitGetting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS Summit
Getting Started with ARM-Based EC2 A1 Instances - CMP302 - Anaheim AWS Summit
 
Security at the speed of cloud: How to think about it & how you can do it now...
Security at the speed of cloud: How to think about it & how you can do it now...Security at the speed of cloud: How to think about it & how you can do it now...
Security at the speed of cloud: How to think about it & how you can do it now...
 
Continuous Delivery on AWS with Zero Downtime
Continuous Delivery on AWS with Zero DowntimeContinuous Delivery on AWS with Zero Downtime
Continuous Delivery on AWS with Zero Downtime
 
AWSome Day 2019 - New Jersey
AWSome Day 2019 - New JerseyAWSome Day 2019 - New Jersey
AWSome Day 2019 - New Jersey
 
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...
Optimize costs - Migrate existing workloads to the new A1 EC2 Instances - CMP...
 
20190318 Amazon EC2 スポットインスタンス再入門
20190318 Amazon EC2 スポットインスタンス再入門20190318 Amazon EC2 スポットインスタンス再入門
20190318 Amazon EC2 スポットインスタンス再入門
 
DevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudDevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the Cloud
 
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...
Enforcing security invariants with AWS Organizations - SDD314 - AWS re:Inforc...
 
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...
India cloudsummit Bangalore - Advanced Container Use-cases on AWS Container S...
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
 
AWSome Day Bethesda - February 2019
AWSome Day Bethesda - February 2019AWSome Day Bethesda - February 2019
AWSome Day Bethesda - February 2019
 
AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...AWS DevDay Vienna - Automating building blocks choices you will face with con...
AWS DevDay Vienna - Automating building blocks choices you will face with con...
 
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...
Securing enterprise-grade serverless applications - SDD401 - AWS re:Inforce 2...
 
AWS DevDay Cologne - Automating building blocks choices you will face with co...
AWS DevDay Cologne - Automating building blocks choices you will face with co...AWS DevDay Cologne - Automating building blocks choices you will face with co...
AWS DevDay Cologne - Automating building blocks choices you will face with co...
 
From Code to a Running Container | AWS Floor28
From Code to a Running Container | AWS Floor28From Code to a Running Container | AWS Floor28
From Code to a Running Container | AWS Floor28
 
Java on AWS
Java on AWSJava on AWS
Java on AWS
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

AWS Java Ecosystem Execution Environments

  • 1. S U M M I T SYDNEY
  • 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS for Java developers in 2019 James Ousby Solutions Architect Amazon Web Services
  • 3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 7. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 11. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 23. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon Corretto Execution environments
  • 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon Corretto Execution environments
  • 26. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Amazon has a long and deep history with Java. I’m thrilled to see the work of our internal mission-critical Java team being made available to the rest of the world.” James Gosling Distinguished Engineer, Amazon Web Services
  • 27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Amazon Corretto Amazon supported distribution of OpenJDK Run internally on thousand of production services Multiplatform Amazon Linux 2, Windows, MacOS, Ubuntu, RHEL, CentOS, SUSE, Docker No cost Distributed under open source license Long term support Corretto 8 until Jun 2023 Corretto 11 until (at least) Aug 2024 All patches and enhancements up streamed to OpenJDK Open source https://github.com/corretto https://aws.amazon.com/corretto
  • 28. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 29. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm Execution environments
  • 30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm
  • 31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Toolkit for IntelliJ and AWS Toolkit for PyCharm Make it easier to develop on AWS Open source https://aws.amazon.com/intellij Initial focus AWS Lambda AWS SAM CLI integration Local debugging Serverless application support Basic resource / credentials management
  • 32. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS SDK for Java 2.0
  • 34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T SnsAsyncClient.builder() .region(Region.US_WEST_2) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); SnsAsyncClient.builder() .region(Region.US_WEST_2) .overideConfiguration( ClientOverrideConfiguration.builder() .apiCallTimeout(Duration.ofSeconds(5) .build()) .build(); SnsAsyncClient.builder() .region(Region.US_WEST_2) .overideConfiguration(o -> o.apiCallTimeout(Duration.ofSeconds(5))) .build(); AWS SDK for Java 2.0 Core tenets Non-blocking asynchronous service clients Immutability through builder pattern Pluggable HTTP clients Consumer builder pattern SnsAsyncClient.create()SnsAsyncClient.builder() .region(Region.US_WEST_2) .httpClient(UrlConnectionHttpClient.create()) .build();
  • 35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS SDK for Java 2.0 Other callout features Modularised (as in Java 9 Modules – Project Jigsaw) Endpoint discovery DynamoDBClient.builder() .region(Region.US_WEST_2) .enableEndpointDiscovery() .build(); <service>.<region>.amazonaws.comdynamodb.ap-southeast-2.amazonaws.commyid2.dynamodb.ap-southeast-2.amazonaws.com myid1.dynamodb.ap-southeast-2.amazonaws.com myid3.dynamodb.ap-southeast-2.amazonaws.com
  • 36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS SDK for Java 2.0 Other callout features Modularised (as in Java 9 Modules – Project Jigsaw) Endpoint discovery HTTP/2 event streaming Fully non blocking HTTP/2 clients Bi-directional real-time streaming responses Reactive streams support Asynchronous stream processing with non-blocking back pressure
  • 37. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS CDK Execution environments
  • 39. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS CDK
  • 40. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T The journey to AWS CDK “CloudFormation JSON / YAML as an intermediary format like bytecode on the JVM?” 2006 – Provision via API 2010 – Provision via AWS SDK for Java 2010 – Provision via CloudFormation 2018 – Provision via AWS CDK generated CloudFormation
  • 41. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS CDK example Amazon Simple Notification Service Stack Amazon Simple Queue Service
  • 42. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS CDK example Queue queue = new Queue(this, "Queue", QueueProps.builder() .withVisibilityTimeoutSec(300) .build()); Topic topic = new Topic(this, "Topic", TopicProps.builder() .withDisplayName("Some Amazing Topic") .build()); topic.subscribeQueue(queue);
  • 43. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS CDK example { "Resources": { "Queue4A7E3555": { "Type": "AWS::SQS::Queue", "Properties": { "VisibilityTimeout": 300 } }, "QueuePolicy25439813": { "Type": "AWS::SQS::QueuePolicy", "Properties": { "PolicyDocument": { "Statement": [ { "Action": "sqs:SendMessage", "Condition": { "ArnEquals": { "aws:SourceArn": { "Ref": "TopicBFC7AF6E" } } }, "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Resource": { "Fn::GetAtt": [ "Queue4A7E3555", "Arn" ] } } ], "Version": "2012-10-17" }, "Queues": [{ "Ref": "Queue4A7E3555" }] } }, "TopicBFC7AF6E": { "Type": "AWS::SNS::Topic", "Properties": { "DisplayName": "Some Amazing Topic" } }, "TopicQueueSubscription2D098ED4": { "Type": "AWS::SNS::Subscription", "Properties": { "Endpoint": { "Fn::GetAtt": [ "Queue4A7E3555", "Arn" ] }, "Protocol": "sqs", "TopicArn": { "Ref": "TopicBFC7AF6E" } } } } }
  • 44. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS CDK example Queue queue = new Queue(this, "Queue", QueueProps.builder() .withVisibilityTimeoutSec(300) .build()); Topic topic = new Topic(this, "Topic", TopicProps.builder() .withDisplayName("Some Amazing Topic") .build()); topic.subscribeQueue(queue);
  • 45. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS CDK example { "Resources": { "Queue4A7E3555": { "Type": "AWS::SQS::Queue", "Properties": { "VisibilityTimeout": 300 } }, "QueuePolicy25439813": { "Type": "AWS::SQS::QueuePolicy", "Properties": { "PolicyDocument": { "Statement": [ { "Action": "sqs:SendMessage", "Condition": { "ArnEquals": { "aws:SourceArn": { "Ref": "TopicBFC7AF6E" } } }, "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Resource": { "Fn::GetAtt": [ "Queue4A7E3555", "Arn" ] } } ], "Version": "2012-10-17" }, "Queues": [{ "Ref": "Queue4A7E3555" }] } }, "TopicBFC7AF6E": { "Type": "AWS::SNS::Topic", "Properties": { "DisplayName": "Some Amazing Topic" } }, "TopicQueueSubscription2D098ED4": { "Type": "AWS::SNS::Subscription", "Properties": { "Endpoint": { "Fn::GetAtt": [ "Queue4A7E3555", "Arn" ] }, "Protocol": "sqs", "TopicArn": { "Ref": "TopicBFC7AF6E" } } } } }
  • 46. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Cloud Development Kit (AWS CDK) Higher level abstractions Object oriented & extensible Native IDE support (it’s just code) Java, Javascript, Typescript, .NET Open Source https://github.com/awslabs/aws-cdk Currently in Developer Preview
  • 47. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 48. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem Execution environments
  • 49. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T AWS Java ecosystem
  • 50. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Performance
  • 51. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Dependency caching
  • 52. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 53. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Summary
  • 54. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 55. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T A project wish list (devops) Pipeline as code Infrastructure as code Isolation Everything in the same language as my application Pipelines are highly available and performant
  • 56. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T A project wish list (application build) (Serverless) Performance on par with a more long lived JVM workload All underpinned by a JVM that is dependable with free long term support Functional programming friendly SDK’s (Serverless) Great local development experience (debugging and IDE support)
  • 57. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Pet Clinic – Spring Boot example app
  • 58. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Environment Architecture This is the simplistic view of what we would like A load balancer, some web servers and a database AWS Cloud
  • 59. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Environment Architecture Things are not quite so simple when it comes to deployment. AWS gives you a lot of control over the wider environment Can AWS CDK help keep things simple? AWS Cloud VPC Availability Zone 1 Availability Zone 2 Availability Zone 3 Auto Scaling group
  • 60. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Pipeline Architecture Source Stage Retrieve source from Github Build Stage Maven build (mvn package) Create petclinic.jar Run CDK to provision or update environment
  • 61. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Pipeline Architecture What do I mean by isolation? Devops Account Prod Account Non Prod Account PetClinic Pipeline PetClinic Staging PetClinic Prod
  • 62. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 63. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Content links Amazon Corretto https://aws.amazon.com/corretto/ AWS Toolkit for IntelliJ https://aws.amazon.com/intellij AWS Cloud Development Kit (AWS CDK) https://github.com/awslabs/aws-cdk AWS CDK demo + lab https://github.com/jousby/aws-java-appdev-lab https://github.com/jousby/aws-buildbox
  • 64. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Related breakouts Enhancing your Developer eXperience on AWS Derek Bingham Pro tips for builders on AWS Gabe Hollombe
  • 65. Thank you! S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. James Ousby joousby@amazon.com