3. 3
Brief Agenda
• Serverless - Not Just The Lambda Functions?
• What do we call Serverless?
• Why industry goes Serverless
4. 4
Brief Agenda
• Serverless - Not Just The Lambda Functions?
• What do we call Serverless?
• Why industry goes Serverless
• Low-Latency Data Processing in Serverless – Any Chance?
• Typical scenarios of Low-Latency Processing
• What brings the latency in Serverless
• Approaches to optimize Serverless Computing
5. 5
Brief Agenda
• Serverless - Not Just The Lambda Functions?
• What do we call Serverless?
• Why industry goes Serverless
• Low-Latency Data Processing in Serverless – Any Chance?
• Typical scenarios of Low-Latency Processing
• What brings the latency in Serverless
• Approaches to optimize Serverless Computing
• Demo Time – The Serverless Fraud Detection
7. 7
About me
• 8 years of experience of on different
positions from Java Engineer to
Team Lead and Solutions Architect
8. 8
About me
• 8 years of experience of on different
positions from Java Engineer to
Team Lead and Solutions Architect
• Cloud Developer at Hazelcast Inc.
9. 9
About me
• 8 years of experience of on different
positions from Java Engineer to
Team Lead and Solutions Architect
• Cloud Developer at Hazelcast Inc.
• Moving you to the Cloud
38. 38
Typical scenarios of Low-Latency Processing
• Algorithmic trading in Financial markets
• Real-time Bidding for Ads
39. 39
Typical scenarios of Low-Latency Processing
• Algorithmic trading in Financial markets
• Real-time Bidding for Ads
• Fraud detection for the in-flight transactions
40. 40
Typical scenarios of Low-Latency Processing
• Algorithmic trading in Financial markets
• Real-time Bidding for Ads
• Fraud detection for the in-flight transactions
• Personalized user experience in E-commerce
41. 41
Typical scenarios of Low-Latency Processing
• Algorithmic trading in Financial markets
• Real-time Bidding for Ads
• Fraud detection for the in-flight transactions
• Personalized user experience in E-commerce
• Complex Event Processing
63. 63
Approaches to optimize Serverless Computing
Choosing external data store to cache “HOT” data
Read 1 MB sequentially
from disk
1 ms
Latency Numbers Every Programmer Should Know
https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html
64. 64
Approaches to optimize Serverless Computing
Choosing external data store to cache “HOT” data
Read 1 MB sequentially
from disk
1 ms
Read 1 MB sequentially
from SSD
78 μs
Latency Numbers Every Programmer Should Know
https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html
65. 65
Approaches to optimize Serverless Computing
Choosing external data store to cache “HOT” data
Read 1 MB sequentially
from disk
1 ms
Read 1 MB sequentially
from SSD
78 μs
Read 1 MB sequentially
from memory
5 μs
Latency Numbers Every Programmer Should Know
https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html
75. 75
The Serverless Fraud Detection
Why Hazelcast Cloud
• Managed Service for the Hazelcast IMDG – a full-featured In-
Memory Data Grid
76. 76
The Serverless Fraud Detection
Why Hazelcast Cloud
• Managed Service for the Hazelcast IMDG – a full-featured In-
Memory Data Grid
• Co-located Hazelcast IMDG cluster can transform and ingest data
in microseconds (see https://hazelcast.com/resources-
type/?type=Benchmark)
77. 77
The Serverless Fraud Detection
Why Hazelcast Cloud
• Managed Service for the Hazelcast IMDG – a full-featured In-
Memory Data Grid
• Co-located Hazelcast IMDG cluster can transform and ingest data
in microseconds (see https://hazelcast.com/resources-
type/?type=Benchmark)
• Comes with the Enterprise-grade Security
78. 78
The Serverless Fraud Detection
Why Hazelcast Cloud
• Managed Service for the Hazelcast IMDG – a full-featured In-
Memory Data Grid
• Co-located Hazelcast IMDG cluster can transform and ingest data
in microseconds (see https://hazelcast.com/resources-
type/?type=Benchmark)
• Comes with the Enterprise-grade Security
• Simple to Deploy and Use
79. 79
The Serverless Fraud Detection
Why Hazelcast Cloud
• Managed Service for the Hazelcast IMDG – a full-featured In-
Memory Data Grid
• Co-located Hazelcast IMDG cluster can transform and ingest data
in microseconds (see https://hazelcast.com/resources-
type/?type=Benchmark)
• Comes with the Enterprise-grade Security
• Simple to Deploy and Use
• AWS Lambda-ready
83. 83
Summary
• Serverless is a perfect match when you want to move fast
• You can do Low-Latency Processing in Serverless but be aware
of the common pitfalls
84. 84
Summary
• Serverless is a perfect match when you want to move fast
• You can do Low-Latency Processing in Serverless but be aware
of the common pitfalls
• Think about latency and H/A when you choose the data storage
85. 85
Summary
• Serverless is a perfect match when you want to move fast
• You can do Low-Latency Processing in Serverless but be aware
of the common pitfalls
• Think about latency and H/A when you choose the data storage
• In-Memory computing is a natural and logical choice when it
comes to the Low-Latency Processing
86. 86
Summary
• Serverless is a perfect match when you want to move fast
• You can do Low-Latency Processing in Serverless but be aware
of the common pitfalls
• Think about latency and H/A when you choose the data storage
• In-Memory computing is a natural and logical choice when it
comes to the Low-Latency Processing
• KEEP CALM and apply for Beta at https://console.hazelcast.cloud
1st this term was introduces with the launch of Amazon Functions and hence is oftent associated with it but let’s try to lern more about what it is.
New model of Cloud Computing
AWS Lambda is a compute service that lets you run code without provisioning or managing servers. AWS Lambda executes your code only when needed and scales automatically, from a few requests per day to thousands per second. You pay only for the compute time you consume - there is no charge when your code is not running.
So, the Serverless is good for this, for that… but what if we want to solve some really specific problems, e.g. Low-Latency Processing?
Where the latency comes from in the Serverless?
TODO: limitations, tell about Hazelcast during demo
TODO: limitations, tell about Hazelcast during demo
TODO: limitations, tell about Hazelcast during demo
TODO: limitations, tell about Hazelcast during demo
TODO: limitations, tell about Hazelcast during demo
TODO: limitations, tell about Hazelcast during demo
Background threads – no possibility to do asynchronous processing
What are the ways to solve these problems?
How to deal with the Cold Start latencies?
TODO: review & refactor all this
Other case when we can have problems with the performance are the CPU-bound tasks
Better graph?
Another aspect which impacts the performance is the way we deploy our Serverless system
How to deploy the system if we want to minimise a latency?
Better graph?
Better graph?
At the end, naturally, even if we keep our Function WARM, the data we want to access quickly, we want to cache may simply not fit into Function F/S or memory.
TODO: review & refactor all this
TODO: review & refactor all this
TODO: review & refactor all this
TODO: review & refactor all this
TODO: review & refactor all this
TODO: review & refactor all this
TODO: review & refactor all this
Less latency – less money
TODO: review & refactor all this
Now, let’s try to use all this in practice and try to solve one of the common low-latency problems – the Fraud Detection Problem
Better graph?
Better graph?
Better graph?
TODO: add scheduled lambda
Better graph?
Introduction about why we decided to do this.
Mention that it will be public-available soon?