Mematikan dengan Bersih dan Melepaskan Sumber Daya
Tutup kumpulan koneksi dan file saat server berhenti.
Mematikan dengan Bersih dan Melepaskan Sumber Daya adalah pelajaran MCP Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar MCP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus MCP Academy mencakup 4 pelajaran total.
Mengapa Pemadaman Penting
Koneksi terbuka yang tidak pernah ditutup membocorkan resource: soket menumpuk, kumpulan koneksi tetap terpakai, dan basis data terus sibuk.
Pembongkaran Berada Setelah Yield
Semua hal setelah yield dalam lifespan Anda merupakan kode pemadaman yang berjalan ketika server diperintahkan untuk berhenti.
async def lifespan(server):
db = await connect()
yield {"db": db}
await db.close()Tutup yang Anda Buka
Aturan emasnya: untuk setiap resource yang Anda buka saat startup, tambahkan close yang sesuai saat pembongkaran agar tidak ada yang tertinggal tanpa penanganan.
try / finally Menjamin Pelaksanaannya
Bungkus yield dengan try / finally agar pembersihan tetap berjalan meskipun sebuah permintaan gagal di tengah proses.
async def lifespan(server):
db = await connect()
try:
yield {"db": db}
finally:
await db.close()Selesaikan Pekerjaan yang Sedang Berjalan
Penghentian yang anggun memungkinkan pemanggilan tool yang sedang berjalan selesai sebelum pembongkaran, bukan menghentikannya secara tiba-tiba.
Kosongkan Buffer Sebelum Menutup
Beberapa klien menyimpan data dalam buffer, jadi lakukan flush pada penulisan yang tertunda sebelum menutup agar byte terakhir yang dikirim tidak hilang.
Tutup dalam Urutan Terbalik
Lakukan pembongkaran dalam urutan terbalik dari pembuatannya, sehingga sesuatu tidak pernah ditutup ketika sesuatu yang bergantung padanya masih aktif.
Jangan Macet Saat Keluar
Lindungi pembersihan yang lambat dengan timeout agar koneksi yang macet tidak menghalangi seluruh server untuk berhenti.
Pembersihan Idempoten
Jadikan pembongkaran idempoten: menutup sesuatu dua kali seharusnya tidak menimbulkan masalah, karena pemadaman dapat dipicu lebih dari sekali.
Catat Jalur Pemadaman
Satu baris log singkat untuk setiap resource yang ditutup mengubah proses keluar yang senyap menjadi sesuatu yang benar-benar dapat Anda debug ketika terjadi masalah.
Pengelola Konteks Melakukannya untuk Anda
Membungkus klien dalam async with akan menutupnya secara otomatis, sehingga Python menangani pelepasan dan Anda menulis lebih sedikit pembersihan manual.
async def lifespan(server):
async with connect() as db:
yield {"db": db}Pemeriksaan Singkat
Di bagian mana lifespan menempatkan kode yang melepaskan resource?
Ringkasan: Pemadaman Bersih
Anda melepaskan sumber daya setelah yield, melindunginya dengan try/finally, menutupnya secara terbalik, dan mencegah kemacetan. Kini server Anda dapat dimulai dan dihentikan dengan rapi. ✅
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mematikan dengan Bersih dan Melepaskan Sumber Daya” gratis?
Ya — teks lengkap “Mematikan dengan Bersih dan Melepaskan Sumber Daya” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus MCP Academy, upgrade ke CoddyKit PRO. Kursus MCP Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Mematikan dengan Bersih dan Melepaskan Sumber Daya”?
Tutup kumpulan koneksi dan file saat server berhenti. Kamu berlatih MCP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai MCP Academy?
Tidak diperlukan pengalaman sebelumnya. MCP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Mematikan dengan Bersih dan Melepaskan Sumber Daya” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran MCP Academy ini?
Ya. Setiap pelajaran MCP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Hook Startup Lifespan
- Berbagi Status melalui Konteks Aplikasi
- Mengakses Objek Konteks
- Mematikan dengan Bersih dan Melepaskan Sumber Daya