AWS Well-Architected Framework định nghĩa khả năng phục hồi là “khả năng phục hồi khi bị căng thẳng bởi tải (nhiều yêu cầu dịch vụ hơn), các cuộc tấn công (tình cờ thông qua một lỗi hoặc có chủ ý) và lỗi của bất kỳ thành phần nào trong khối lượng công việc.”
Khả năng phục hồi là nhu cầu thiết yếu cho tất cả các ngành, nhưng nó thường có thể bị hiểu nhầm, điều này có thể dẫn đến khối lượng công việc quá phức tạp hoặc hoàn toàn không kết hợp kiến trúc có khả năng phục hồi.
Khả năng phục hồi là một vấn đề kỹ thuật, nhưng nó cũng liên quan đến con người và văn hóa. Đó là một quá trình liên tục đòi hỏi chúng ta phải học hỏi bằng cách lặp đi lặp lại. Từ góc độ kinh doanh, khách hàng cần hiểu các yêu cầu SLA của họ là gì và từ góc độ kỹ thuật, cách họ đạt được điều này với kiến trúc của mình. Trong bài đăng này, chúng tôi chia sẻ các tài nguyên để giúp bạn xây dựng khả năng phục hồi cho kiến trúc AWS của mình.
Amazon’s approach to building resilient services
Xây dựng một kiến trúc có khả năng phục hồi không chỉ về việc triển khai kỹ thuật của hệ thống mà còn về các giải pháp cho khả năng quan sát, hoạt động và con người.
Video này cho thấy cách tiếp cận của Amazon để thiết kế các hệ thống có khả năng phục hồi, nơi các nhóm riêng lẻ tự xây dựng và sở hữu một dịch vụ riêng. Bằng cách này, mọi người đều có trách nhiệm vận hành. Bạn sẽ học cách triển khai thường xuyên, phát triển nhanh và thiết kế các giải pháp để tự động khôi phục, cho phép các nhóm quay lại khối lượng công việc của họ về version trước đó nếu cần.
Các trụ cột được áp dụng bởi các nhóm kỹ sư xây dựng dịch vụ tại Amazon
Five design patterns to build more resilient applications
Khả năng phục hồi là một cân nhắc quan trọng đối với các developers. Ví dụ, nếu một dịch vụ downstream không khả dụng, thì phần mềm có thể xử lý tình huống như thế nào? Bạn nên sử dụng cơ chế nào để thực hiện thử lại? Làm thế nào bạn có thể ngăn chặn quá tải dịch vụ downstream?
Video này tập trung vào năm chiến lược và mẫu thiết kế mà các developers có thể sử dụng để xây dựng các ứng dụng linh hoạt. Bạn sẽ học cách thêm timeouts, số lần thử lại, exponential backoff với tính ngẫu nhiên và bộ ngắt mạch vào mã của mình. Các mô hình thiết kế này được trừu tượng hóa và có thể triển khai trong nhiều tình huống khác nhau.
Các nhà phát triển phần mềm có thể triển khai các chiến lược khác nhau trong mã ứng dụng của họ để thiết kế khả năng phục hồi
Building Resilient Well-Architected Workloads Using AWS Resilience Hub
Bài đăng trên blog này cho bạn biết cách AWS Resilience Hub có thể giúp bạn đánh giá khả năng phục hồi của kiến trúc của mình. Nó cung cấp cho bạn một nơi trung tâm để giám sát, theo dõi và đánh giá khả năng phục hồi của ứng dụng dựa trên mục tiêu kinh doanh của bạn. Ví dụ: sau khi bạn xác định RPO và RTO SLAs, Resilience Hubsẽ đánh giá kiến trúc hiện tại của bạn so với chúng và cho bạn biết liệu bạn đã đạt được mục tiêu của mình chưa. Nếu bạn chưa đạt được các mục tiêu của mình, Resilience Hub sẽ đề xuất các thay đổi để giúp bạn đạt được các mục tiêu đó.
Kiến trúc Multi-AZ tích hợp các tính năng sao lưu dữ liệu
Incorporating continuous resilience in your development ecosystem
Khả năng phục hồi bao trùm một loạt các cân nhắc, bao gồm cơ sở hạ tầng, mô hình ứng dụng, cách quản lý dữ liệu, cách xây dựng và giám sát ứng dụng. Và sau khi bạn kết hợp khả năng phục hồi, việc liên tục duy trì nó là điều cần thiết.
Video này cung cấp các nguyên tắc hữu ích để xây dựng khả năng phục hồi liên tục trong các ứng dụng của bạn. Nó cũng khám phá các cân nhắc khác nhau đối với việc triển khai các quy trình được thiết kế để cung cấp cải tiến liên tục thông qua phương pháp DevOps và hiển thị cho bạn các dịch vụ mà bạn có thể sử dụng để kết hợp khả năng phục hồi trong quá trình phát triển một cách gần như liên tục.
Các kiến trúc sư phần mềm có thể triển khai một số mẫu để ngăn ngừa lỗi hoặc có khả năng chịu lỗi
Hẹn gặp lại các bạn trong lần sau!
Cảm ơn bạn đã tham gia cuộc thảo luận của chúng tôi về kiến trúc kiên cường! Hẹn gặp lại bạn sau vài tuần với nội dung của chúng tôi về quản trị trên cloud!
Tìm kiếm thêm nội dung kiến trúc? AWS Architecture Center cung cấp các sơ đồ kiến trúc tham chiếu, các giải pháp kiến trúc đã được hiệu chỉnh, các phương pháp hay nhất được kiến trúc tốt nhất, các mẫu, biểu tượng và hơn thế nữa!
Các bài viết khác trong loạt bài này
- Let’s Architect! Using open-source technologies on AWS
- Let’s Architect! Architecting for Sustainability
- Let’s Architect! Architecting for Machine Learning
- Let’s Architect! Architecting for Security
- Let’s Architect! Tools for Cloud Architects
- Let’s Architect! Architecting for Blockchain
- Let’s Architect! Architecting microservices with containers
- Let’s Architect! Serverless architecture on AWS
Bài được dịch từ bài viết trên AWS Blogs, bạn có thể xem bài viết gốc tại đây.