AWS Microservice Extractor for .NET simplifies the process of re-architecting older monolithic applications into smaller code projects to build a microservices-based architecture. Modernize and transform your applications with an assistive tool that analyzes source code and runtime metrics to create a visual representation of your application and its dependencies. You can also extract the codebase into separate projects that teams can develop, build, and operate independently to improve agility, uptime, and scalability.
Layered Visualization for Applications
AWS Microservice Extractor for .NET uses source code analysis and runtime metrics to produce a layered visualization that shows projects, namespaces, dependency graphs, runtime metrics (for example, runtime call counts), and static references between code artifacts (for example, classes). You can use the visualization and call counts to understand dependencies between components and identify the heavily called ones. Create up to 10 canvases per application to visualize and group related classes for extraction.
With AI-powered recommendations, developers get guided experience to re-architect legacy applications. Microservice Extractor now identifies common extraction candidates using heuristics-based techniques and machine learning, and highlights those in visualization. These recommendations can be used as is or used as a starting point to extract microservices off of monolithic codebase. Thus, automated recommendations from Microservice Extractor helps to speed up re-architecting large applications even if the developer is unfamiliar with the codebase.
Incremental porting to Linux
For large .NET Framework applications that are too big to port in one-shot, reduce the blast radius of porting by grouping related classes, extract, and port just those classes to cross-platform .NET and run on Linux. Keep doing this (known as strangler fig pattern) until all classes are moved to Linux.
After manually removing dependencies to prepare parts of the application for extraction, you can use Microservice Extractor for .NET to extract API endpoints. Microservice Extractor for .NET carves out the code that underlies these API endpoints by replacing local calls with network calls. You may then develop, build, and deploy these projects as you see fit. AWS recommends that you thoroughly test your application after transforming it with Microservice Extractor for .NET before using it in production.