Serverless Apps with Java on AWS

Use cases, templates, patterns and examples

Seating is limited -- Register Now!

at Live, virtual workshop

Language: English

Price: 150€ (+19% MwSt. [VAT])

Managing and provisioning various cloud services is as complex as writing application Java code. In contrast to application code, the cloud infrastructure is highly reusable.

This workshop is a continuous review of ready-to-use templates, examples, and patterns of serverless applications on Amazon Web Services, focusing on serverless. We will use Infrastructure as Java Code: AWS Cloud Development Kit (CDK v2) for Java and use Maven repositories to quickly build and share the code.

In this workshop, I won't implement each application from scratch, rather than walk through already prepared ready-to-use examples and templates reflecting common patterns and adjust them to more specific use cases.

All changes, attendees' requests, and suggestions will be committed to a git repository in real-time.

Prerequisites

Basic AWS and Java SE / Java EE / Jakarta EE / MicroProfile experience (I will use Java concepts to explain FaaS, HA, functions, triggers, events, containers, metrics, configuration).

Topics

After a a short introduction to AWS basics (VPC, IAM, accounts, storage and organizations), we will cover the following templates and use cases:

  • Continuous deployment with AWS Cloud Development Kit (CDK) v2
  • A reusable AWS ECS Fargate construct with Quarkus, Docker image creation and push
  • MicroProfile (e.g. Quarkus) microservices on ECS Fargate with private DNS names with Route 53
  • ECS Fargate application behind an Application Load Balancer with end to end SSL encryption and automated certificate handling
  • ECS Fargate application on Quarkus accessing Aurora DB for PostgreSQL with secrets
  • Scheduled / cron jobs for ECS Fargate and Lambda
  • Scheduled tasks with ECS Fargate
  • Serverless, continuous deployment with CodePipeline, GitHub, CDK, CodePipeline and CodeDeploy (GitOps, self-provisioned runtimes)
  • Saving costs with EC 2 Spot instances for batch, build and with Fargate
  • Running microservices and AWS Lambdas in isolated VPCs
  • MicroProfile / AWS Lambda application accessing Aurora DB via JDBC
  • Using serverless, AWS managed Kafka with MicroProfile applications
  • Metrics and alerts for MicroProfile applications with CloudWatch
  • Using JWT, OIDC with MicroProfile applications and AWS Cognito
  • Automated provisioning of VPN and Bastion hosts for debugging
  • Automated DNS and SSL certificates handling
  • Native images with GraalVM on AWS
  • featuring: Quarkus, Helidon, Micronaut and plain Java SE
  • The agenda is based on questions from projects, conferences, workshops and is still in progress
  • ...and most popular questions, topics and technologies from airhacks.tv

In this advanced workshop I will discuss and implement cloud native Java / MicroProfile applications in serverless AWS cloud. As a reference, you will get a GIT repository with all snippets and solutions, as well as prepared sample applications.

A developer laptop with pre-installed Java 11 (AWS Lambda currently only runs on Corretto 11), GIT-client, AWS CLI, and Maven 3 is required to run the examples. You can run the examples if you like, or "hack" along with me, but taking notes is perfectly viable as well.

I will use my AWS account to live deploy the applications and explain various AWS services.

Environment requirements / prerequisites.

I/we will spend 80% of the time in code--it also highly depends on your questions.

Feel free to contact me / register via email: workshops[-AT-] adam-bien.com

Registration

Please ask your finance department for an invoice address. The address below will appear on the invoice.