If you answer yes to any of these questions, then you might want to consider implementing a microservice bases architecture:
Is your current application monolith and difficult to maintain?
Do you anticipate that your application will have to deal with high volumes of traffic?
Is modularisation and code reusability the main priority?
Does your application need to be accessed on multiple device types such as mobile, IoT and web?
Do specific areas in your application need to be able to scale on demand?
Are you looking to improve your software products build and release process?
If you answer yes to most of these, however, you can probably get away with a traditional monolithic application architecture:
Do you just need to ship an MVP to test the market?
Do you already have a stable product/team that will continue to work on the product until you retire it?
Is your product “in the wild”, generating revenue and the user community is happy? If so, no sense in reinventing the wheel.