docs/en/solution-templates/microservice/mono-repo-vs-multiple-repository-approaches.md
//[doc-seo]
{
"Description": "Explore the advantages of mono-repo vs. multiple repository approaches for microservices in ABP Framework, enhancing your development strategy."
}
//[doc-nav]
{
"Next": {
"Name": "Authoring unit and integration tests in the Microservice solution",
"Path": "solution-templates/microservice/authoring-unit-and-integration-tests"
}
}
You must have an ABP Business or a higher license to be able to create a microservice solution.
Microservices architecture breaks down an application into a series of small, loosely coupled services. Each microservice is designed to fulfill a specific business function and can be developed, deployed, and scaled independently. One of the critical decisions in implementing microservices is choosing the repository structure: mono-repo or multiple repos.
In a mono-repo approach, all microservices are stored within a single repository. When you create ABP microservice solutions, you have a mono-repo structure by default. You can add your applications in the apps folder, your microservices in the services folder, and gateways in the gateways folder. Additionally, you can add external configurations in the etc folder.
In the multiple repos approach, each microservice has its own repository. You can create a main repository for ABP Solution and add all services in the services folder. Each microservice path stores as relative path in the main repository. This approach allows teams to work on services independently and provides more separate control over access and permissions.
The choice between mono-repo and multiple repos depends on various factors including team size, project complexity, and organizational needs. Both mono-repo and multiple repository approaches have their pros and cons. The decision should be based on the specific context of the project, taking into account factors such as team structure, scalability needs, and management preferences. By carefully considering these aspects, organizations can choose the repository strategy that best aligns with their goals and operational requirements.