Re-architecting as microservices without containers - AWS Prescriptive Guidance

Re-architecting as microservices without containers

AWS Lambda is a serverless compute service that lets you run code without provisioning or managing servers, creating workload-aware cluster scaling logic, maintaining event integrations, or managing runtimes. Lambda runs your function only when needed and scales automatically, from a few requests per day to thousands per second. You pay only for the compute time that you consume—there is no charge when your code isn’t running. In this approach, a monolithic application is broken down into smaller services, where each service serves a single purpose. If the service isn’t constantly running, it can be implemented as a Lambda function; otherwise, the service should run in a container.

Use cases

You can use this migration strategy in the following scenarios:

  • You want to break your monolithic system into microservices.

  • You have the resources and time available for refactoring.

  • You can resolve all .NET Framework dependencies.

  • Your applications do not run constantly; they run for a very short period of time.

Advantages

This migration approach provides the following benefits, when compared with on-premises .NET applications:

  • Faster innovation because it’s easier to add new features in a microservices architecture

  • High availability and reliability

  • Increased agility and on-demand scalability

  • Independent deployment and modern CI/CD pipelines

  • Strong module boundaries and technical diversity

  • Cost savings

  • Reduced infrastructure provisioning efforts

Disadvantages

  • Effort and cost of refactoring

  • Operational complexity

  • No support for long-running applications

AWS services

These are some of the important AWS services that you can use to develop a microservices architecture with AWS Lambda:

Tools

AWS Professional Services offers custom tools and services to help you refactor your monolithic applications into microservices.

Deployment decisions

This migration and modernization approach is supported by AWS Lambda


          Refactoring .NET applications as microservices on
            AWS