# Rancang perangkat lunak untuk lingkungan cloud native

Taiga Learning · Lembar kerja
https://taiga.training/id/lessons/cloud-native/

Gunakan informasi fiktif atau yang disetujui. Jangan masukkan secret dalam lembar kerja ini.

## Tujuan pembelajaran
- Membedakan pengemasan container dari perilaku cloud native.
- Mengidentifikasi risiko state, percobaan ulang, dan penggantian pada layanan yang dihasilkan.
- Menentukan kontrak platform yang dapat diverifikasi oleh agen dan manusia.

## Latihan
Layanan laporan fiktif menyimpan job dan file yang selesai pada disk container. Gambarkan alur permintaan, job, file, dan unduhan. Tandai state yang harus persisten. Tentukan apa yang terjadi jika worker berhenti setelah menulis file tetapi sebelum mengonfirmasi job.

## Jawaban Anda
- Skenario dan cakupan:
- Asumsi dan pertanyaan yang belum terjawab:
- Jawaban atau keputusan yang diusulkan, beserta alasan:

## Verifikasi jawaban Anda
| Klaim atau kriteria | Bukti atau pengujian | Hasil atau kekurangan | Penanggung jawab |
| --- | --- | --- | --- |
| | | | |
| | | | |
| | | | |

## Tindakan berikutnya
- Tindakan, penanggung jawab, dan tanggal:
- Kapan Anda akan meninjau jawaban ini?

## Prinsip yang perlu dipertahankan
Desain cloud native membuat perubahan dan operasi dapat diulang secara konsisten. Image container saja tidak membuktikan perilaku tersebut.

## Sumber
- [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/)

Lembar kerja ini mendukung pembelajaran. Menyelesaikannya tidak dengan sendirinya mengizinkan perubahan produksi.
