Đề cương khóa học
Giới thiệu
- Kiến trúc hệ thống và dịch vụ, PaaS, và thiết kế hướng đám mây (cloud-native)
Tổng quan về Kiến trúc Hệ thống Đơn thể
- Chạy toàn bộ chức năng của ứng dụng đơn thể trong một tiến trình duy nhất
- Mở rộng quy mô thông qua nhân bản trên nhiều máy chủ
- Các giao thức được sử dụng trong hệ thống đơn thể: EAI, CORBA, v.v.
Tổng quan về Webservices
- Kiến trúc Hướng Dịch vụ (SOA) và Kiến trúc Vi dịch vụ
Kiến trúc Hướng Dịch vụ (SOA)
- Lợi ích và chi phí của SOA
- Thành công và thất bại trong việc triển khai SOA
- Tin nhắn và ESB
- Cơ sở hạ tầng và công cụ hỗ trợ SOA
Cách Vi dịch vụ Thực hiện Các Khái niệm Dịch vụ Web
- Chỉ làm một việc và làm tốt việc đó
- DevOps
- Triển khai và Phân phối Liên tục (Tích hợp Liên tục, Quy trình Xây dựng Liên tục, v.v.)
- Các giao thức nhẹ
Các Giao thức và Tiêu chuẩn Vi dịch vụ
- HTTP, JMS, AMQP, Websockets, JSON, v.v.
Các Khung Phát triển để Xây dựng Vi dịch vụ
- Các khung phát triển dựa trên Java (Spring Cloud)
- Các khung phát triển dựa trên Javascript (Seneca)
Phân rã Ứng dụng Đơn thể
- Xây dựng các ứng dụng có thể triển khai độc lập
- Tổ chức các ứng dụng vi dịch vụ xung quanh các năng lực kinh doanh
- Nghiên cứu tình huống: Di chuyển một ứng dụng đơn thể sang ba vi dịch vụ cốt lõi
Cài đặt Môi trường Phát triển Spring Cloud
- Cấu hình Docker và Docker Compose
- Thiết lập các biến môi trường
Tổng quan về Spring Cloud và Spring Boot
- Các dự án con của Spring Cloud: Config Server & Bus, Eureka, Ribbon, Feign và Hystrix
- Spring Boot
Tạo ứng dụng Spring Boot
Quản lý cấu hình tập trung, có phiên bản với Spring Cloud Config
Cập nhật cấu hình động với Spring Cloud Bus
Khám phá dịch vụ với Eureka
Cân bằng tải với Ribbon
Áp dụng cơ chế ngắt mạch (circuit breakers) với Hystrix
Clients REST khai báo với Feign
Làm việc với API Gateway
Bảo mật ứng dụng vi dịch vụ
Truy vết vi dịch vụ để phát hiện độ trễ
Triển khai Vi dịch vụ
- Các hộp chứa (Docker, K8N, LXC, v.v.)
- Quản lý cấu hình (Ansible, v.v.)
- Khám phá dịch vụ
- Giám sát và Quản lý Vi dịch vụ
- Cơ sở hạ tầng cho Vi dịch vụ
Đám mây và Khả năng Tự động Mở rộng của Vi dịch vụ
- Dự phòng và chuyển đổi lỗi (fail-over) của vi dịch vụ
- Mở rộng quy mô hiệu suất cho Vi dịch vụ
- Tự động mở rộng quy mô
- Triển khai Vi dịch vụ trên OpenStack, AWS và các nền tảng đám mây khác
Xử lý sự cố các Vấn đề Thường gặp cho Ứng dụng Phân tán
- Độ phức tạp của hệ sinh thái
- Hiệu suất mạng
- Bảo mật
- Triển khai
- Kiểm thử
- Các Nano-service
Cân nhắc Cuối cùng để Xây dựng Hệ thống Sẵn sàng Cho Sản xuất
- Đơn giản hóa hệ thống để người mới bắt đầu dễ dàng tiếp cận
- Hoàn thiện hệ thống để làm nền tảng cho các ứng dụng doanh nghiệp
Tóm tắt và Kết luận
Yêu cầu
- Nắm vững các nguyên lý kỹ thuật phần mềm và hệ thống
- Có kinh nghiệm phát triển Java
- Có kinh nghiệm làm việc với Spring Framework
Đối tượng tham gia
- Các nhà phát triển Java mong muốn xây dựng và triển khai vi dịch vụ một cách nhanh chóng
- Các kiến trúc sư hệ thống mong muốn triển khai kiến trúc vi dịch vụ
Đánh giá (3)
Thực hành các bài tập trong EA.
Pawel - Krajowa Szkola Skarbowosci
Khóa học - UML in Enterprise Architect (workshops)
Dịch thuật bằng máy
Các thực hành
Ivan - si
Khóa học - Spring Cloud for Microservices
Dịch thuật bằng máy
Trainer tốt và quy trình đào tạo
Mateusz Mical - Research and Development Center Bury Sp. z o .o.
Khóa học - Systems Modeling with SysML and Enterprise Architect (EA)
Dịch thuật bằng máy