performance_stripes
Read+Write
dIOPS
100K
Latency
50 ms p(99)
Cost
$75.8

per month / per 1K dIOPS

Read Only
dIOPS
0
Latency
0 ms p(99)
Write Only
dIOPS
100K
Latency
50 ms p(99)
Configuration

Read / Write Allocation: 0% / 100%
Data Unit Size: 550 bytes
Testbed: 2 Gatling instances, 4 cores, 20 minutes progressive throughput
App: Akka 2023.10, 60K entities, event sourced log 4-way sharded, source code

Infrastructure:
18 EC2 m5.2xlarge ($0.2420 / hr)
1 EKS cluster ($0.10 / hr)
4 RDS db.r6g.2xlarge ($354 / mo 1-yr full upfront)
4 SSD 100 GB io2 7K IOPS ($712.50 / mo)

Total Monthly Cost: $7,581.26

Definitions

dIOPS: # of transactional data units processed (read & write) / second
Latency: round trip HTTP request-response time measured during peak dIOPS
Cost: Total reserved instance costs for a 31 day month ratioed against 1K dIOPS

This was a sample test to demonstrate that 100,000 write operations per second was possible with Akka, whose events are persisted to a Postgres database. No read allocations were given to the entities that were created. This application simulates a digital twin solution, where a single Akka actor represented an IOT device that had to persist 550 bytes of information on each update. 60K entities were created and all of their state changes were persisted against a single virtual event log that was sharded across four RDS database instances, a new capability that is part of the Akka 2024.05 release.

We needed 7K SSD IOPS allocation to achieve this performance level, and storage IOPS is the biggest driver of cost in this benchmark.

Ultimately, in this configuration, customers would pay $75.8 / month for 1K of write dIOPS performance.

Test Date: April 8th, 2024

Stay Responsive
to Change.