DevOps AI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
No Result
View All Result
Home Tin tức

Deploy microservices

Deployment patterns và kiến trúc Microservices

devopsify by devopsify
19 Tháng 9, 2022
in Tin tức
0
Share on FacebookShare on Twitter

Việc deploy một ứng dụng có kiến trúc monolithic là một con đường đau khổ. Khi bạn dự định chuyển sang kiến trúc deploy microservices, sẽ cho phép bạn có những kết nối uyển chuyển giữa các services được viết bằng ngôn ngữ khác nhau và sử dụng frameworks khác nhau. Tuy nhiên nó cũng tạo nhiều thách thức trong việc deployment.

monolithic architecture vs microservice architecture
Monolithic architecture vs Microservice architecture (Image source: Internet)

Với thời gian review dạo nhiều trúc deployment, qua bài viết hãy cùng điểm danh các ưu và nhược điểm của từng mô hình nhé.

Có bao nhiêu cách deploy microservices?

Có 2 mô hình phổ biến để deploy ứng dụng thiết kế microservices, bao gồm:

  • Nhiều service chung host.
  • Mỗi service trên host riêng (gồm service per container, service trên VM).

Nếu bạn có mô hình nào phổ biến khác thì comment nhé. Giờ cùng nhau mổ thịt, 2 deployment patterns này trước nhé

Related Post

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

11 Tháng 6, 2025
Đổi MTU cho Calico trong Kubernetes

Đổi MTU cho Calico trong Kubernetes

30 Tháng 4, 2025

Demo Tích Hợp Vault trong Kubernetes

30 Tháng 4, 2025

Setup FTP Server on Amazon Linux 2

30 Tháng 4, 2025

Deploy microservices chung host

Với kiểu deploy này, sẽ tạo 1 hoặc nhiều host (có thể là vitual host). Với mỗi host sẽ host các services khác nhau trên đó. Đối với kiểu deploy này thường có 2 dạng. Mỗi service là 1 process instance trong host này. Dạng khác nhiều service cùng chạy trên 1 process.

Lợi điểm của kiểu deploy này là tận dụng hiệu quả sử dụng resource, cũng như làm đơn giản quá trình deploy, giảm overhead và cho phép start service nhanh chóng.

Vì mỗi servivce run process riêng biệt trên instance gây khó khăn trong việc xác định và monitor mức sử dụng resource của service đã deploy và run chung process.

Deploy microservices trên host riêng

Ở kiểu deployment này mỗi microservice được thực thi trên 1 host riêng biệt. Host này c1o thể là máy ảo ( VM) hoặc là container. Có 2 hình thức deploy microservices ở kiểu này là:

  • Deploy microservices trên VM
  • Deploy microservices trên Container

Deploy microservices trên VM

Với cách này sẽ đóng gói microservice như là 1 VM image. Với cách này, mỗi instance của service sẽ chạy trên 1 máy ảo. Developers có thể scale bằng cách tăng số lượng instainces thông qua việc lượng máy ảo.

Deply cách này cho phép scale một cách độc lập với các service khác. Nó giúp mỗi service có resource dedicated và developer có thể scale up/down theo nhu cầu sử dụng hệ thống.

Ngoài ra, có thể deploy nhiều service trên cùng VM bằng cách expose các service trên các port khác nhau.

Chạy các service instance một cách độc lập giúp bạn tận dụng tốt các tính năng của cloud như load balancing hay autoscaling.

Khó khăn lớn nhất của kiểu deploy này là việc tiêu tốn nhiều resource và thời gian build, cũng như quản lý các VM này.

Deploy microservices trên Container

Với cách deploy Mỗi Service trên Container nhiều ưu điểm hơn Mỗi Service trên VM. Trong cách này, microservice instainces chạy trên từng containers riêng.

Cách này giúp tối ưu việc sử dụng memory & CPU. Tận dụng ưu điểm khi dùng container runtime và cho phép deploy nhiều instainces trên cùng 1 container. Đây là cách thông dụng để đơn giản hóa quá trình deploy microservices.  Việc build container image cũng đơn giản và nhanh chóng.

Tuy nhiên, một vài nhược điểm cần lưu ý khi áp dụng giải pháp này:

  • Developer cập nhật version cho container thủ công. Nếu bạn host nhiều instances cùng 1 container, và update đồng thời thì khả năng issue phát sinh.
  • Deploy update có thể gặp rủi ro mất data khi trên môi trường live (PRD).
  • Containers không giống như VM là chạy OS độc lập, nó vẫn share container engine trên 1 OS Kernel máy host container.

So sánh giữa 2 kiến trúc Monolithic vs Microservice

[table id=8 responsive=flip datatables_fixedheader=top automatic_url_conversion=true /]

Chốt hạ

Mỗi kiến trúc và mẫu deployment đều có ưu và nhược điểm. Để quyết định được theo kiến trúc hay mẫu deployment nào thì cần dưa vào ngữ cách của doanh nghiệp, tổ chức, dự án và yêu cầu của khách hàng để lựa chon mô hình phù hợp nhất cho giải pháp của bạn.

Microservices sẽ có thể phù hợp hơn nếu nhiều team cùng làm trên dự án, techstack phức tạp, không đòi hỏi nhiều về scalability. Tuy nhiên với team size nhỏ, thì monolithic architecture tỏ ra phù hợp hơn.

Tags: buildcicdcontainerCPUdeploydeveloperframeworkkiến trúcmemorymicroservice architecturemonolithicupdate
devopsify

devopsify

Related Posts

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất
DevOps & Cloud

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

by devopsify
11 Tháng 6, 2025
Đổi MTU cho Calico trong Kubernetes
DevOps & Cloud

Đổi MTU cho Calico trong Kubernetes

by Hiếu Tạ
30 Tháng 4, 2025
Demo Tích Hợp Vault trong Kubernetes
DevOps & Cloud

Demo Tích Hợp Vault trong Kubernetes

by Hiếu Tạ
30 Tháng 4, 2025
Next Post

Viết runbook việc nhẹ lương cao

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Recommended

Các website demo hay được sử dụng cho thực hành Automation Test

Các website demo hay được sử dụng cho thực hành Automation Test

11 Tháng 6, 2025
Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

1 Tháng 5, 2025
Cài đặt Maven trên Windows

Cài đặt Maven trên Windows

11 Tháng 6, 2025
Cài đặt Grafana – Loki – Promtail monitoring log Container

Cài đặt Grafana – Loki – Promtail monitoring log Container

1 Tháng 5, 2025
Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

16 Tháng 6, 2025
MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

16 Tháng 6, 2025
DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

13 Tháng 6, 2025
GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

11 Tháng 6, 2025
DevOpsify

Cộng đồng DevOps Việt Nam chia sẽ kiến thức giúp tăng tốc quá trình phát triển ứng dụng và tự động hóa trong lĩnh vực Cloud DevOps & AI.

Bài viết mới

  • Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent
  • MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật
  • DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

Categories

  • AI & Automation
  • Bảo mật
  • Chưa phân loại
  • DevOps & Cloud
  • Tin tức
No Result
View All Result
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud

© 2025 DevOpsify