Lerna High Availability Software Stack
Table of contents
Lerna is a software stack for building high-availability, high-throughput systems.
- By executing Lerna’s scripts to VMs running on the cloud (public or private), you can build an environment that is configured to achieve high availability and high throughput.
- In that environment, designing and implementing applications based on the actor model (Akka) and CQRS(Command Query Responsibility Segregation) with Event Sourcing architecture allows you to build highly available systems.
- Libraries and reference implementations for design and implementation are provided.
High availability and high throughput
- Eliminates the bottleneck of writing to the RDBMS by applying the CQRS with Event Sourcing architecture to the application layer
- High Availability and Scalability with Akka Cluster
- Provides responsiveness by making the application stateful, while providing fast failover with guaranteed consistency using Raft
- Benchmark test report of Lerna available here
- Fast failover at the middleware and application layers with platform independence, based on the premise that the server (VM) will stop.
- This ensures high availability independent of hardware and specific cloud environments
Low cost and fast delivery
- No need to purchase expensive high-availability servers; high availability can be achieved at low cost by using OSS middleware.
- Because it can be built on the cloud, it reduces the lead time for hardware procurement and improves delivery speed.
|application template||a template for creating a new project|
|Terraform scripts||scripts to build the environment|
|learning content||hands-on content learning Akka and Scala with Lerna|
|system design documents||documentation for developing with Lerna|
|application libraries||libraries for developing applications that run on Lerna Stack ( API Doc )|
|sample application||a sample application for developing with Lerna application libraries|
|HA library||Akka extension for fast recovery from failure with replicating stateful entity on multiple nodes in Cluster. ( API Doc )|
|benchmark report for Lerna||a benchmark report measuring availability and throughput of Lerna|
|sample application for HA library (Minimum)||a sample application for developing with HA library|
|sample application for HA library (Bank Account)||a sample application that manages bank account balances for developing with HA library|
|batch parallelization library||a library for parallelizing batch processing with Nablarch Batch Framework|
|sample application for batch library||a sample application for developing with batch parallelization library|
|benchmark report for batch library||a report testing speed improvement effect by parallelizing processing using batch parallelization library|
- Does parallelizing batch processing in Lerna make it linearly faster? (Fintan)
- The paradigm of the many-core era; Learn about reactive systems. (ThinkIT)
This content is compliant with Apache License 2.0.
* The names of the companies and products described in this site are trademarks or registered trademarks of the respective companies.
* Amazon Web Services, AWS are trademarks of Amazon.com, Inc. or its affiliates in the United States and/or other countries.
* Akka is a trademark of Lightbend, Inc.