Proposing a Dynamic Executive Microservices Architecture Model for AI Systems
Microservices architecture is one of the new architectural styles that has improved in recent years. It has become a popular architectural style among system architects and developers. This popularity increased with the advent of new technologies and technological advancements in cloud computing. These advancements caused the emergence of new design and development challenges for service-based software systems. The increasing use of microservices architecture in large organizations and teams has increased the need to find appropriate solutions for architecture challenges. Orchestration of the components in the microservices architecture is one of the main challenges in distributed systems and affects the software quality in factors such as efficiency, compatibility, stability, and reusability. In such systems, software architecture consists of fine-grained components. Due to the increasing number of microservices in a large-scale system, proper management and communication orchestration of microservice components can become a point of failure. In this article, the challenges of Microservices architecture have been identified. To resolve the component orchestration challenges, an appropriate model to maintain and improve quality is proposed. The presented model, as a pattern, can be used at the both design and development level of the system. The Dynamicity of software at runtime is the main achievement of this pattern. In this model, microservice components orchestration tasks are performed by using a BPMN-based workflow engine as the orchestrator component. The orchestrator design gives the ability to create, track and modify new composite microservices without the need to change platform infrastructure.
READ FULL TEXT