Join Atlassian developer Patrick Streule to learn about a Java- and JavaScript-based framework that makes it easy for developers to create and deploy serverless add-ons, thanks to platforms like AWS Lambdas and DynamoDB. He'll cover the overall architecture of serverless add-ons, then explain how to manage security, deployments, and integrations with various AWS services and other modern serverless providers.
Patrick Streule, Architect, Atlassian
27. Content
API
32KB
Is the maximum amount of data that can be stored for
each key.
More than one key
You can use different keys for different purposes,
which allows more than 32KB of data in total.
Limits
Other Options
30. Run short-lived
backend code.
Don't pay for idle
time.
Client-accessible
backend
services. Pay for
what you use.
BACKEND AS A SERVICE FUNCTIONS AS A SERVICE
31. FUNCTIONS AS A SERVICE
time𝝺 𝝺𝝺
Invocation
Deployed,
but not running
𝝺
Invocation
Started when
called
𝝺
Stopped when
inactive
𝝺
May stay active
across multiple
calls
32. No
Infrastructure
No base image
updates, no instance
provisioning
Less Ops
Monitoring,
deployment
infrastructure etc.
still needed.
Serverless != NoOps
Cheap
Pre-prod
Low-traffic dev and
staging
environments don't
add cost
Elastic Scaling
Managed and
automatic
Benefits
Dev
Staging
Production
33. Expensive at scale
Possibly cheaper to run
instances and containers at
scale
Downsides
Start-up penalty
Increased latency on
requests that spin up the
function
Tooling
Less mature tooling for
development, deployment,
debugging, …
37. AWS Lambda
Runs the code.
Pay only for
execution time
AWS API Gateway
HTTP to Lambda gateway.
Pay for # of calls and data
transfer.
What is being used?
44. Aerobatic
Hosts static assets.
Free for two add-
ons.
AWS Lambda
Runs the code.
Pay only for
execution time.
AWS API
Gateway
HTTP to Lambda
gateway.
Pay for # of calls and
data transfer.
AWS
DynamoDB
Stores the data.
Pay for storage and
access.
What is being used?
52. Reproducible
The build is the source of
truth for every commit.
Deployment
Safe
Automatic deployments to
dev, manual promotion to
production. Easy rollback.
Automated
Run tests on every branch.
Automatically deploy master
to dev environment.