Should I use microservices for my project? How many microservices should I have?
Every microservice you add increases the testing and deployment complexity for your project. However there are a few reasons you would want to split off separate microservices:
1. the scaling requirements are different (e.g., maybe part of your code needs to be deployed to 100 servers and other parts just to 5 servers).
2. the deployment model is different (e.g., maybe part of your code needs to be sharded by customer id, and other parts not sharded)
3. they are logically different parts of the code or of the company and they can benefit from moving independently for each other.

So split off as many microservices as required by the rules above, but don't split off too many.
Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
### Instruction: Should I use microservices for my project? How many microservices should I have?
### Input: 
### Response: Every microservice you add increases the testing and deployment complexity for your project. However there are a few reasons you would want to split off separate microservices:
1. the scaling requirements are different (e.g., maybe part of your code needs to be deployed to 100 servers and other parts just to 5 servers).
2. the deployment model is different (e.g., maybe part of your code needs to be sharded by customer id, and other parts not sharded)
3. they are logically different parts of the code or of the company and they can benefit from moving independently for each other.

So split off as many microservices as required by the rules above, but don't split off too many.