Hi - Some "thinking out loud" here.. I posed a question at the Mifos (just prior to Fineract launch) meeting in Feb 2016 about the use of containerized microservices - i.e. the use of different containers for each microservice or collection of microservices and how they relate to each other. I don't recall the answer but as a concept, there is this explanation on the fineract site: Containerization
The patterns and specific implementation used allow the containerization of any service provided by the framework. Because the bounded context provides a clean distinction between services, an available API supports seamless integration. Because of the stateless nature of every service, it is possible and preferable to run each service in an isolated unit. We are achieving high availability, ephemeral behavior, and scalability by utilizing containers and the ability to start and stop additional instances fast and without side effects to other services. ( https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=73634331 ) --- but how does this actually work in implementation? Is there an orchestration of microservices by a higher level container? For an analogy, please see this post about the Kubernetes stack https://thenewstack.io/introducing-microservices-hierarchy-needs/ . Does Fineract have a hierarchical approach or philosophy? How would it be articulated? Would it be by *role of the microservice* in the service of a larger architectural aim? e.g. customer management in service of account management ? Or perhaps customer management in service to overall financial provider domain? I suppose it is somewhat clear that with a microservices architecture you have flexibility in how one relates them in new and novel ways - more like the building blocks of a financial system that can be put together in new and novel ways. But, I think this needs some clarity - what is the limit of the flexibility? We know there are trade offs - what will not be tolerated? Perhaps we should think about the namespace conventions as a way to address this? or ? Thanks! James
