Tóm lại, chúng ta có nên thiết kế cái chết vào các chương trình, quy trình và luồng của chúng ta ở mức độ thấp, vì lợi ích chung của hệ thống không?
Thất bại xảy ra. Quá trình chết. Chúng tôi lên kế hoạch cho thảm họa và đôi khi phục hồi từ nó. Nhưng chúng tôi hiếm khi thiết kế và thực hiện cái chết chương trình không thể đoán trước. Chúng tôi hy vọng rằng thời gian phục vụ của dịch vụ của chúng tôi miễn là chúng tôi quan tâm để duy trì hoạt động của chúng.
Một ví dụ vĩ mô của khái niệm này là Chaos Monkey của Netflix , kết thúc ngẫu nhiên các trường hợp AWS trong một số tình huống. Họ cho rằng điều này đã giúp họ khám phá các vấn đề và xây dựng các hệ thống dư thừa hơn.
Những gì tôi đang nói là cấp thấp hơn. Ý tưởng là cho các quá trình chạy dài theo truyền thống để thoát ngẫu nhiên. Điều này sẽ buộc sự dư thừa vào thiết kế và cuối cùng tạo ra các hệ thống linh hoạt hơn.
Liệu khái niệm này đã có tên? Có phải nó đã được sử dụng trong ngành công nghiệp?
BIÊN TẬP
Dựa trên các nhận xét và câu trả lời, tôi e rằng tôi không rõ ràng trong câu hỏi của mình. Cho rõ ràng:
- vâng, ý tôi là ngẫu nhiên
- vâng, tôi có nghĩa là trong sản xuất, và
- không, không chỉ để thử nghiệm
Để giải thích, tôi muốn vẽ một sự tương tự với các sinh vật đa bào.
Trong tự nhiên, sinh vật bao gồm nhiều tế bào. Các tế bào tự ngã ba để tạo ra sự dư thừa, và cuối cùng chúng chết. Nhưng phải luôn có đủ các tế bào đúng loại để sinh vật hoạt động. Hệ thống dự phòng cao này cũng tạo điều kiện chữa lành khi bị thương. Các tế bào chết nên sinh vật sống.
Kết hợp cái chết ngẫu nhiên vào một chương trình sẽ buộc hệ thống lớn hơn phải áp dụng các chiến lược dự phòng để duy trì khả thi. Liệu những chiến lược tương tự này có giúp hệ thống duy trì ổn định khi đối mặt với những thất bại khó lường khác?
Và, nếu bất cứ ai đã thử điều này, nó được gọi là gì? Tôi muốn đọc thêm về nó nếu nó đã tồn tại.