Cô lập và xuống cấp duyên dáng là những chiến lược chung. (Một thuật ngữ khác mà bạn có thể thấy tương tự như sự cô lập là tách rời , mặc dù tôi có xu hướng thấy điều đó ở quy mô nhỏ hơn, chẳng hạn như trong OOD / P. Khái niệm này giống nhau.)
Bạn cách ly các phần khác nhau của một hệ thống với nhau để nếu một cái bị hỏng, những cái khác vẫn có thể đáp ứng yêu cầu. Giống như blog Netflix đã nói , nếu tìm kiếm không hoạt động, phát trực tuyến vẫn ổn. Điều này chỉ có nghĩa là việc tìm kiếm và phát trực tuyến ở nơi tách biệt đủ để một nút cổ chai hoặc mất khả năng của cái này không ảnh hưởng đến cái kia.
Với sự xuống cấp duyên dáng, nếu không có triển khai tốt nhất một thứ gì đó, bạn có một thứ khác điền vào. Một lần nữa từ bài đăng trên Netflix, họ có một hệ thống để xem những thứ bạn đã xem và thích và sau đó đưa ra các đề xuất được cá nhân hóa những thứ để xem. Nếu hệ thống đó ngừng hoạt động, họ sẽ quay lại hiển thị các khuyến nghị về những thứ phổ biến chung. Vấn đề là phải có Kế hoạch B, Kế hoạch C, v.v. để làm hoặc hiển thị một cái gì đó khi Kế hoạch A thất bại thay vì không hiển thị gì hoặc có lỗi.
Một ví dụ phổ biến về phía khách hàng về sự xuống cấp duyên dáng (dù việc triển khai có phổ biến hay không) liên quan đến việc sử dụng javascript trên các trang web. Nếu javascript của trình duyệt bị vô hiệu hóa hoặc đơn giản là không có sẵn, các trang của trang vẫn sẽ hoạt động thành công mà không có nó. Nó có thể không nhanh hoặc trơn, nhưng nó vẫn hoạt động chứ không trở nên không sử dụng được.
Đây là những ý tưởng rất chung chung, mặc dù. Mọi dự án sẽ thực hiện chúng khác nhau, tùy thuộc vào các dịch vụ và hệ thống con mà chúng cung cấp và sự phụ thuộc giữa chúng.