MCP Academy · Pelajaran

Konkurensi dan Tekanan Balik

Batasi pekerjaan paralel agar server tetap sehat.

Pelajaran 2 dari 413 langkah

Konkurensi dan Tekanan Balik adalah pelajaran MCP Academy gratis di CoddyKit. Ini adalah pelajaran 2 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.

Asinkron Tidak Tak Terbatas

Asinkron memungkinkan Anda menjalankan banyak panggilan sekaligus, tetapi setiap tugas yang sedang berlangsung tetap menggunakan memori dan koneksi. Konkurensi tanpa batas dapat menenggelamkan server. 💥

Arti Tekanan Balik

Tekanan balik adalah cara server yang sibuk menahan pekerjaan yang masuk, dengan memperlambat atau mengantrekannya alih-alih mencoba mengerjakan semuanya sekaligus.

Batasi Pekerjaan Paralel

Semaphore menetapkan batas atas jumlah tugas yang berjalan secara paralel, sehingga server hanya menerima sebanyak yang dapat ditanganinya dengan aman.

sem = asyncio.Semaphore(10)
async with sem:
    await do_work()

Batasi Kumpulan Koneksi Anda

Berikan ukuran maksimum pada kumpulan koneksi basis data dan HTTP. Setelah batas tercapai, panggilan baru menunggu koneksi yang kosong alih-alih membuka koneksi tanpa henti.

Antrekan, Jangan Buang

Saat kapasitas penuh, biarkan panggilan tambahan mengantre sebentar. Waktu tunggu yang singkat dan terbatas lebih baik daripada mengalami kerusakan saat terjadi lonjakan permintaan mendadak.

Batasi Antrean Juga

Antrean tanpa batas hanya menyembunyikan kelebihan beban sampai memori habis. Batasi panjang antrean dan tolak pekerjaan setelah antrean penuh.

Tolak dengan Cepat Saat Penuh

Jika server mengalami saturasi, kembalikan error sibuk yang jelas dengan cepat agar klien dapat mencoba lagi, alih-alih membiarkan panggilan menggantung selamanya.

Tambahkan Timeout di Mana Saja

Pasangkan batas dengan timeout agar satu upstream yang macet tidak dapat menahan satu slot tanpa batas dan perlahan membuat setiap permintaan lain kehabisan sumber daya.

async with asyncio.timeout(5):
    await call_upstream()

Pantau Jumlah yang Sedang Berlangsung

Lacak jumlah tugas yang sedang aktif. Jumlah panggilan yang sedang berlangsung dan terus meningkat merupakan peringatan paling awal bahwa beban melampaui kapasitas.

Sesuaikan Batas dengan Kenyataan

Pilih batas berdasarkan perilaku yang diukur, bukan perkiraan. Lakukan uji beban, pantau latensi, lalu naikkan atau turunkan batas hingga server tetap stabil.

Tetap Sehat di Bawah Beban

Jika diterapkan dengan baik, tekanan balik menjaga server tetap stabil: server melayani apa yang mampu ditanganinya, menunda sisanya, dan tidak pernah sampai mengalami kerusakan.

Pemeriksaan Singkat

Dari apa tekanan balik melindungi server?

Rangkuman: Batasi Beban

Anda membatasi pekerjaan paralel dengan semaphore, membatasi kumpulan koneksi dan antrean, menambahkan timeout, serta menolak dengan cepat saat penuh, sehingga server tetap sehat. ✅

Gratis untuk memulai

Belajar Python dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Konkurensi dan Tekanan Balik” gratis?

Ya — teks lengkap “Konkurensi dan Tekanan Balik” 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 “Konkurensi dan Tekanan Balik”?

Batasi pekerjaan paralel agar server tetap sehat. 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 2 dari 4.

Berapa lama pelajaran “Konkurensi dan Tekanan Balik” 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

  1. Alat Asinkron yang Tidak Menghalangi
  2. Konkurensi dan Tekanan Balik
  3. Meringkas Hasil yang Menghabiskan Banyak Token
  4. Menskalakan secara Horizontal dengan Sesi
← Kembali ke MCP Academy