Khóa học Microservices

Khóa học Microservices được thiết kế nhằm cung cấp kiến thức toàn diện về kiến trúc microservices, một phương pháp xây dựng hệ thống phần mềm hiện đại, linh hoạt và dễ mở rộng. Khóa học sẽ giúp học viên hiểu rõ các khái niệm cơ bản, ưu điểm, và cách triển khai microservices trong thực tế.

Tham gia khóa học Microservices, học viên sẽ được trang bị đầy đủ kiến thức và kỹ năng cần thiết để thiết kế, triển khai và quản lý hệ thống microservices một cách hiệu quả. Khóa học không chỉ cung cấp lý thuyết mà còn đưa ra các bài tập thực hành cụ thể, giúp học viên có thể áp dụng ngay vào công việc thực tế.

Khóa học nhằm trang bị cho học viên:

  1. Hiểu biết sâu rộng về kiến trúc microservices: Bao gồm các khái niệm cơ bản, lợi ích và so sánh với kiến trúc monolithic.
  2. Kỹ năng thiết kế và phân tách dịch vụ: Học viên sẽ học cách phân tách dịch vụ dựa trên năng lực kinh doanh và các lĩnh vực thứ cấp, cũng như thực hành thiết kế dịch vụ khép kín.
  3. Quản lý dữ liệu hiệu quả: Học viên sẽ nắm vững các phương pháp quản lý dữ liệu trong môi trường phân tán như SAGA, CQRS, Domain event và Event sourcing.
  4. Tối ưu hóa giao tiếp giữa các dịch vụ: Học viên sẽ được học về các phương thức giao tiếp khác nhau, từ tin nhắn giao dịch đến API gateway và backend for frontend.
  5. Thiết kế hệ thống toàn diện: Học viên sẽ hiểu về khám phá dịch vụ, các mô hình tin cậy và bảo mật, cùng với các vấn đề chung trong hệ thống microservices.
  6. Kiểm thử và quan sát hệ thống: Học viên sẽ biết cách kiểm thử các dịch vụ và quan sát hệ thống qua log aggregation, distributed tracing và các công cụ khác.
  7. Triển khai và vận hành: Học viên sẽ học cách triển khai microservices trên nhiều mô hình khác nhau, từ triển khai trên container đến serverless.
  8. Tái cấu trúc và đánh giá kiến trúc: Học viên sẽ hiểu về các phương pháp tái cấu trúc hệ thống và đánh giá kiến trúc, cũng như áp dụng mô hình DevSecOps trong doanh nghiệp.
  9. Thực hành và ứng dụng: Khóa học kết thúc với một dự án tổng kết, giúp học viên ứng dụng tất cả những kiến thức đã học vào thực tế.

Khóa học này phù hợp với các lập trình viên, kiến trúc sư phần mềm, và các chuyên gia công nghệ thông tin muốn nâng cao kiến thức và kỹ năng về microservices, cũng như những ai đang tìm kiếm cách xây dựng và quản lý hệ thống phần mềm hiện đại, linh hoạt và dễ mở rộng.

Học viên cần có:

  • Kiến thức cơ bản về lập trình và kiến trúc phần mềm, đặc biệt về mô hình monolith và microservices;
  • Cần kinh nghiệm thực tế phát triển và triển khai ứng dụng sử dụng microservices, quen thuộc với các framework như Spring Boot hoặc .NET Core;
  • Hiểu biết về quản lý dữ liệu (CQRS, Saga) và giao tiếp API (REST, gRPC). Có kinh nghiệm với DevOps, CI/CD (Jenkins, Docker, Kubernetes) và sử dụng dịch vụ cloud (AWS, Azure).
  • Tư duy hệ thống và khả năng phân tích, giải quyết vấn đề phức tạp cũng rất quan trọng.

1. Tổng quan về Microservices

  • Tổng quan về microservices
    • Các khái niệm cơ bản
    • So sánh với monolith
    • Tổng quan về tất cả các mô hình ( patterns)
    • Xem xét các phản mô hình (Anti-pattern)
  • Phân tách dịch vụ
    • Mô hình phân tách theo năng lực kinh doanh
    • Mô hình phân tách theo lĩnh vực thứ cấp
    • Thực hành phần tách dịch vụ
    • Mô hình dịch vụ khép kín
    • Thiết kế mẫu và code cho mô hình dịch vụ khép kín
    • Cách tổ chức các nhóm phát triển và vận hành dịch vụ

2. Quản lý dữ liệu

  • Quản lý dữ liệu
    • Mô hình 1 cơ sở dữ liệu 1 dịch vụ
    • Mô hình chỉa sẻ cơ sở dữ liệu
    • Mô hình SAGA
    • Thiết kế mẫu và code cho Saga
    • Mô hình API composition
    • Thiết kế mẫu và code cho API composition
    • CQRS
    • Thiết kế mẫu và code cho CQRS
    • Domain event
    • Thiết kế mẫu và code cho Domain event
    • Event sourcing
    • Thiết kế mẫu và code cho Event sourcing

3. Các phương thức giao tiếp với Microservices

  • Tin nhắn giao dịch
    • Hộp thư giao dịch
    • Theo dõi nhật ký giao dịch
    • Polling publisher
    • Thiết kế mẫu và code cho các mô hình
    • Tin nhắn giao dịch (Transactional messaging)
  • Phong cách giao tiếp
    • Remote Procedure Invocation
    • Messaging
    • Domain-specific protocol
    • Idempotent Consumer
    • Thiết kế mẫu và code cho các mô hình
    • Phong cách giao tiếp (Communication style )
  • API Ngoài
    • API gateway
    • Thiết kế mẫu và code cho API gateway
    • Backend for front-end
    • Thiết kế mẫu và code cho backend for front-end
  • Mô hình giao diện người dùng
    • Server-side page fragment composition
    • Client-side UI composition

4. Thiết kế hệ thống Microservices

  • Khám phá dịch vụ
    • Client-side discovery
    • Server-side discovery
    • Service registry
    • Self registration
    • 3rd party registration
  • Tin cậy
    • Circuit Breaker
    • Thicuit Breakertration s Circuit Breaker
  • An toàn
    • Access Token
    • Thiess Tokenkertration s Access Token
  • Các vấn đề chung
    • Mẫu dịch vụ
    • Khung microservices
    • Cấu hình được đặt bên ngoài
    • Thiết kế mẫu và code cho các mô hình
    • Các vấn đề chung ( Cross cutting concern)

5. Đánh giá và triển khai hệ thống Microservices

  • Kiểm thử
    • Consumer-driven contract test
    • Consumer-side contract test
    • Service component test
    • Thiết kế mẫu và code cho all testing
  • Quan sát
    • Log aggregation
    • Application metrics
    • Audit logging
    • Distributed tracing
    • Exception tracking
    • Health Check API
    • Log deployments and changes
    • Thiết kế mẫu và code cho all Observability
  • Mô hình triển khai
    • Nhiều dịch vụ trên 1 host
    • 1 dịch vụ trên 1 host
    • 1 dịch vụ trên 1 máy chủ ảo
    • 1 dịch vụ trên 1 container
    • Thiết kế mẫu và code cho Mô hình triển khai
    • Serverless deployment
    • Thiết kế mẫu và code cho serverless
    • Service deployment platform
    • Thiết kế mẫu và code cho deployment platform

6. Cấu trúc hệ thống Microservices

  • Tái cấu trúc (Di chuyển)
    • Strangle Application
    • Thiết kế mẫu và code cho Strangle Application
    • Anti-corruption layer
    • Thiết kế mẫu và code cho Anti-corruption layer
  • Đánh giá kiên trúc
    • Giới thiệu
    • Cách ứng dụng
    • Đánh giá 1 vài bản mẫu
  • Mô hình DevSecOps cho doanh nghiệp
    • Enterprise TechOps model
    • Sample toolchains for microservices
    • Enterprise best practices

7. Cấu trúc hệ thống Microservices

  • Tái cấu trúc (Di chuyển)
    • Strangle Application
    • Thiết kế mẫu và code cho Strangle Application
    • Anti-corruption layer
    • Thiết kế mẫu và code cho Anti-corruption layer
  • Đánh giá kiên trúc
    • Giới thiệu
    • Cách ứng dụng
    • Đánh giá 1 vài bản mẫu
  • Mô hình DevSecOps cho doanh nghiệp
    • Enterprise TechOps model
    • Sample toolchains for microservices
    • Enterprise best practices

8. Bài tập

  • Dự án tổng kết: dự án mẫu microservices với native cloud tools

Ôn tập và làm bài kiểm tra trắc nghiệm cuối khóa

 

Top khoá học

				
					
				
			

Đánh giá của đối tác & học viên

Các chuyên gia và sinh viên công nghệ tiềm năng bước ra từ iPMAC nói gì về khóa học?

Tìm kiếm khóa học

Nhận tư vấn

(024) 3771 0668

ĐĂNG KÝ HỌC