Serverless MachaOn

The Serverless module within the MachaOn project is designed to create final build projects tailored specifically for serverless environments. By leveraging essential configurations, adapters, and libraries, this module simplifies the deployment of modular apps on serverless cores. It ensures efficient integration with cloud-native services, enabling scalable, cost-effective, and high-performance solutions while adhering to Clean Architecture principles.

Key Features

  1. Cloud-Native Integration:

    • Simplifies development and deployment on serverless cores like AWS Lambda, Azure Functions, and Google Cloud Functions.
    • Supports cloud-native services like storage (S3, Azure Blob Storage), messaging (SNS, SQS, Pub/Sub), and API Gateway configurations.
  2. Modular Architecture:

    • Promotes the use of reusable components and artifacts from the Maven repository.
    • Clean separation of business logic, adapters, and infrastructure layers as per Clean Architecture principles.
  3. Scalability:

    • Designed to scale dynamically in response to workload demand, minimizing operational costs.
  4. Cost Effectiveness:

    • Optimized for pay-as-you-go serverless cores, reducing idle costs while maintaining high performance.
  5. Customizable Configurations:

    • Allows developers to configure and customize serverless application deployments to fit specific business needs.

Project Structure

The Serverless MachaOn module is organized in a clear and modular structure:

Prerequisites

To use the Serverless MachaOn module, ensure the following tools and services are available in your environment:

  • Java 11:
    Java runtime required for building and deploying the serverless components.
  • Apache Maven:
    Maven is used to manage dependencies and build modular components.
  • Cloud Account:
    An active cloud service provider account (AWS, Azure, or Google Cloud).