Is this a "True" Microservice (Discussion)
See original GitHub issueWhilst reviewing the eShop architecture I found the solution file example; eShopOnContainers-ServicesAndWebApps.sln
is forcing devs to include multiple services in the same project.
This is an anti-pattern. For midsize to large teams updating their respective services becomes a cumbersome task that requires them to build the whole solution. How best can we break this dependency?
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (2 by maintainers)
Top Results From Across the Web
Have you ever seen microservices do more good than harm?
Do you think a smaller company/team can truly benefit from microservices, or have I just been dealing with people that don't know better?...
Read more >Understanding True Microservices
MSA is about identifying unique areas of responsibility and separating them within your code. In our example, you'd be best served by separating ......
Read more >Advantages and Disadvantages of Microservices Architecture
Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple APIs.
Read more >Microservices Architecture – Explained in Plain English
With a microservice architecture, a company can specifically scale only the service that needs to handle more traffic, which is more efficient ...
Read more >Microservices are hard
You may argue that makes it not a true microservices architecture, but one could make the same claim about a modular monolith.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Hey @j0nimost, the sln file exists for an F5 debug experience in Visual Studio. This is just to make things easier for people who are getting started. However, our build pipelines (CI/CD) are independent and they do not reference the sln files. What this means is, if you change the code within their projects, only those are built and pushed to Docker Hub. There are no dll references and services do not depend on each other. All services communicate with their endpoints or asynchronously using messaging.
If you wish to open the project separately, open it using the .csproj file inside the service directory. If you wish to run only few services, you can do that by modifying docker-compose file and enabling those services that you want to run.
Hello @nishanil , this is a very nice explanation you’ve given. So the
sln
is just dependent on Visual Studio or Vscode, to build and run. I think this should be made clear in the docs. Thanks!