# Thiết kế phần mềm cho môi trường cloud native

Taiga Learning · Worksheet học tập
https://taiga.training/vi/lessons/cloud-native/

Dùng thông tin giả định hoặc được phê duyệt. Không đưa secret vào worksheet này.

## Mục tiêu học tập
- Phân biệt đóng gói container với hành vi cloud native.
- Xác định rủi ro về trạng thái, thử lại và thay thế trong dịch vụ được tạo.
- Xác định hợp đồng nền tảng mà agent và con người có thể kiểm chứng.

## Bài tập
Một dịch vụ báo cáo giả định lưu job và tệp đã hoàn tất trên ổ đĩa container. Vẽ luồng từ yêu cầu đến job, tệp và lượt tải xuống. Đánh dấu trạng thái cần lưu bền vững. Xác định điều gì xảy ra nếu worker dừng sau khi ghi tệp nhưng trước khi xác nhận job.

## Câu trả lời của bạn
- Kịch bản và phạm vi:
- Giả định và câu hỏi còn mở:
- Câu trả lời hoặc quyết định đề xuất, kèm lý do:

## Xác minh câu trả lời
| Nhận định hoặc tiêu chí | Bằng chứng hoặc test | Kết quả hoặc khoảng trống | Người phụ trách |
| --- | --- | --- | --- |
| | | | |
| | | | |
| | | | |

## Hành động tiếp theo
- Hành động, người phụ trách và ngày:
- Khi nào bạn sẽ xem lại câu trả lời này?

## Nguyên tắc cần giữ
Thiết kế cloud native giúp thay đổi và vận hành có thể lặp lại một cách nhất quán. Chỉ có container image không bảo đảm hành vi đó.

## Nguồn
- [CNCF: Cloud Native Definition v1.1](https://github.com/cncf/toc/blob/main/DEFINITION.md)
- [Kubernetes: Deployments](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
- [AWS Builders’ Library: Making retries safe with idempotent APIs](https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/)

Worksheet hỗ trợ học tập. Hoàn tất nó tự nó không cho phép thay đổi production.
