IT/Programming

Microservice Architecture

루벤초이 2023. 1. 23. 08:44

An example of single point of failure for the webpage was introduced in the article that I first heard about microservice architecture. Of course, there is much more to it. In general, it is considered as a variant of the service-oriented architecture (SOA), so-called fine-grained SOA. It essentially follows the Unix philosophy of "Do one thing and do it well". ["microservices", wiki] It also encourages single responsibility principle (SRP), loose coupling, high cohesion.

The advantages of microservices vary - modularity, scalability, CI/CD, risk management, integration of heterogeneous technologies and so on, while the learning curve and more complicated architecture are introduced as its disadvantages, comparing to Monolith.

Some useful definitions about microservices:

A microservice is a tiny and independent software process that runs on its own deployment schedule and can be updated independently.
A microservices application is a distributed program composed of many tiny services that collaborate to achieve the features and functionality of the overall project.

- Ashley Davis, Bootstrapiping Microservices with Docker, Kubernetes, and Terraform, Manning Publications(2021), 1.5, 1.6

 

Docker is usually mentioned when we talk about microservice architecture, it is just one of the options. There are some books about microservice architecture by Python/Flask, Java/Spring, etc. Furthermore, docker (can be installed in Linux) is free but docker-desktop (for Windows, Mac and Linux) requires a license for commercial use.

 

Reference

  1. 타렉 지아드, 파이썬 마이크로서비스, 에이콘출판사(2019) 
    • This book introduces how to create microservice architecture by Python using Flask
  2. 우메쉬 램, 마이크로서비스 아키텍처, 에이콘출판사(2019) 
    • This book introduces how to create microservice architecture by Spring boot
  3. Ashley Davis, Bootstrapiping Microservices with Docker, Kubernetes, and Terraform, Manning Publications(2021)

 

728x90
반응형

'IT > Programming' 카테고리의 다른 글

Embedded Python Application  (0) 2022.12.31
[Book Review]  (0) 2021.10.03
Simple REST API client-server  (0) 2021.08.05
UX 디자인 패턴  (0) 2021.08.04
React 라이브러리 npm 배포  (0) 2021.04.12