Microservices based application design and deployment


In this post, I'll discuss the high level overview of next generation applications design and deployment. 
Microservices is the emerging trend to break down your business functionality in to smaller chunks and deploying/scaling/managing them independently for an enterprise application. However it is the sole & discrete decision of adoption of this software design for existing or new applications in an enterprise.
Consider a small business scenario where we have a web based application called 'Guestbook', consists of following technical components-

1. Developed using Java/J2EE
2. Services (Microservices) developed using Spring Boot 
3. MySQL Database.
4. ZUUL Proxy for API Gateway
5. Eureka for Service Registry

Below would be the sample flow of application access as a micro services based software design-


  • As shown above, end user connects to the WebUI.
  • The application's all services/microservices are deployed independently which internally connects to a MySQL database.
  • Now these microservices are registered in Eureka(Service Registry client) which then connects to API Gateway(ZUUL Proxy) and the final service URL will be consumed by the application.

After the application deployment, it is important to manage the containers. Possible option could be Docker swarm, Kubernetes, OpenShift, Amazon ECS etc.
This blog considers Kubernetes as orchestration engine. Below is the diagram to showcase containers management-
  • IT can be clearly seen that GuestbookUI, corresponding microservices & MySQL database has been deployed independently as service. The yellow boxes shows scaled up containers.
  • A ReplicationController ensures that a specified number of pod replicas are running at any one time.



Comments

  1. Thank you so much for this nice information. Hope so many people will get aware of this and useful as well. And please keep update like this.

    Big Data Services

    Data Lake Services

    Advanced Analytics Services

    Full Stack Development Services

    ReplyDelete
  2. Data migration service providers like your company helped me in moving the data with stability. You had helped in determining which data is useful to move and how the quality of the data can get changed after the transformation.

    ReplyDelete
  3. Thank you for sharing wonderful information with us to get some idea about it.

    soa Online Training Hyderabad

    ReplyDelete

Post a Comment

Popular posts from this blog

Oracle SOA Suite- Implementing Email Notification

Oracle SOA Suite 12c- PKIX path building failed & unable to find valid certification path to requested target

Migration of Oracle SOA Suite Composite from 11g to 12c