全部产品
Search
文档中心

Alibaba Cloud Linux:Apa yang harus saya lakukan jika sejumlah besar proses tidak dapat dibuat pada instans Alibaba Cloud Linux 2?

更新时间:Jun 28, 2025

Topik ini menjelaskan penyebab dan solusi untuk masalah ketika sejumlah besar proses tidak dapat dibuat pada instans Elastic Compute Service (ECS) yang menjalankan Alibaba Cloud Linux 2.

Deskripsi masalah

Saat pemanggilan sistem fork atau clone dijalankan pada instans Alibaba Cloud Linux 2, proses tidak dapat dibuat dan muncul pesan kesalahan "-1 EAGAIN (Resource temporarily unavailable)". Masalah ini biasanya terjadi dalam salah satu dari skenario berikut:

  • Skema 1: Saat menjalankan perintah shell pada instans, muncul pesan kesalahan "bash: fork: retry: No child processes".

  • Skema 2: Proses atau thread tidak dapat dibuat untuk aplikasi tertentu, tetapi dapat dibuat untuk aplikasi lainnya.

Penyebab

Masalah ini dapat terjadi karena alasan berikut:

  • Penyebab 1: Jumlah maksimum thread yang dapat dibuat oleh pengguna sistem telah tercapai. Anda dapat menjalankan perintah ulimit -u untuk memeriksa jumlah maksimum thread yang dapat dibuat oleh pengguna sistem.

  • Penyebab 2: Jumlah proses (nr_user_process) yang dibuat oleh pengguna waktu proses untuk aplikasi tertentu melebihi batas atas spesifik aplikasi (app_limit).

Solusi

Ubah jumlah maksimum thread yang dapat dibuat oleh pengguna sistem

  1. Identifikasi aplikasi-aplikasi yang prosesnya tidak dapat dibuat.

  2. Jalankan perintah berikut untuk secara paksa menghentikan aplikasi yang menggunakan banyak thread.

    Peringatan

    Perintah kill dapat menyebabkan risiko. Sebelum menjalankan perintah kill, disarankan untuk membuat snapshot instans atau mencadangkan file penting instans guna memastikan keamanan data.

    Ganti <PID> dengan ID proses (PID) dari aplikasi yang ingin dihentikan.

    kill -9 <PID>
  3. Jalankan perintah berikut untuk mengubah jumlah maksimum thread yang dapat dibuat oleh pengguna sistem:

    ulimit -u <$Num_Of_Process>

Ubah batas sumber daya suatu proses

  1. (Opsional) Jika paket util-linux belum diinstal pada instans, jalankan perintah berikut untuk menginstalnya:

    yum install -y util-linux
  2. Ubah batas sumber daya suatu proses.

    Ganti <$PID> dengan PID.

    prlimit --pid <$PID> --nproc=unlimited