Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk menetapkan bilangan maksimum sambungan dalam nodejs

Bagaimana untuk menetapkan bilangan maksimum sambungan dalam nodejs

PHPz
PHPzasal
2023-04-06 09:11:571123semak imbas

Node.js ialah persekitaran masa jalan JavaScript bahagian pelayan dipacu acara yang sesuai untuk membangunkan aplikasi rangkaian berprestasi tinggi dan boleh skala. Dalam aplikasi praktikal, kita sering perlu menulis aplikasi Node.js untuk melaksanakan pengurusan sambungan rangkaian serentak pelayan. Walau bagaimanapun, dalam proses pengurusan sambungan, kami mungkin menghadapi masalah kesesakan yang disebabkan oleh terlalu banyak sambungan, jadi kami perlu menetapkan bilangan maksimum sambungan untuk Node.js.

Node.js ialah atur cara dipacu acara berbenang tunggal dan menggunakan I/O tak segerak untuk mengendalikan permintaan rangkaian. Ini bermakna Node.js boleh mengendalikan banyak sambungan serentak pada masa yang sama. Di bawah tetapan lalai Node.js, tiada had pada bilangan maksimum sambungan, yang tidak menjadi masalah untuk kebanyakan aplikasi. Walau bagaimanapun, dalam beberapa kes, kami perlu mengehadkan bilangan maksimum sambungan untuk mengelakkan penggunaan sumber pelayan yang berlebihan.

Terdapat banyak cara untuk menetapkan bilangan maksimum sambungan dalam Node.js. Mari perkenalkan satu demi satu di bawah.

Kaedah 1: Gunakan arahan ulimit

Arahan ulimit ialah alat di bawah sistem Linux/Unix yang digunakan untuk mengehadkan penggunaan sumber program pengguna. Dengan mengubah suai nilai perintah ulimit, anda boleh mengehadkan bilangan maksimum sambungan Node.js. Dalam terminal baris arahan, anda boleh menggunakan arahan berikut untuk menetapkan bilangan maksimum sambungan untuk Node.js:

ulimit -n 1000

Di sini bilangan maksimum sambungan ditetapkan kepada 1000. Sudah tentu, anda juga boleh menyesuaikannya mengikut keperluan anda.

Kaedah 2: Ubah suai kod sumber Node.js

Cara lain untuk menetapkan bilangan maksimum sambungan Node.js ialah mengubah suai kod sumber Node.js. Prasyarat untuk melakukan ini ialah kita perlu menguasai struktur kod sumber Node.js dan cara menyusun versi yang diubah suai. Langkah pengubahsuaian khusus adalah seperti berikut:

  1. Buka fail lib/internal/socket_list.js dalam direktori sumber Node.js.
  2. Dalam baris 18 kod, cari kod berikut:
const MAX_SOCKETS = Infinity;
  1. Tukar Infiniti dalam kod di atas kepada bilangan maksimum sambungan yang anda mahu tetapkan , Contohnya:
const MAX_SOCKETS = 1000;

Di sini bilangan maksimum sambungan ditetapkan kepada 1000. Begitu juga, anda boleh menyesuaikannya mengikut keperluan anda.

  1. Kompil semula kod sumber Node.js dan gantikan fail boleh laku Node.js asal dalam sistem.

Kaedah 3: Gunakan modul Node.js

Cara lain untuk menetapkan bilangan maksimum sambungan dalam Node.js ialah menggunakan modul pihak ketiga. Modul yang lebih popular pada masa ini adalah ulimit dan had. Kedua-dua modul digunakan untuk mengehadkan penggunaan sumber proses, termasuk bilangan maksimum deskriptor fail, penggunaan memori maksimum, dsb. Menggunakan kedua-dua modul ini, anda boleh menetapkan bilangan maksimum sambungan dalam aplikasi Node.js anda dengan mudah.

Contoh penggunaan modul ulimit:

const ulimit = require('ulimit');

ulimit.set({nofile: 1000}, (err, res) => {
    if (err) {
        console.error(`Failed to set ulimit: ${err}`);
        return;
    }
    console.log(`Set ulimit: ${res}`);
});

Di sini bilangan maksimum sambungan ditetapkan kepada 1000, iaitu sama seperti dua kaedah sebelumnya.

Contoh penggunaan modul pengehadan:

const limitation = require('limitation');

limitation.set('nofile', 1000)
    .then(() => console.log('Set maximum number of file descriptors to 1000'))
    .catch((err) => console.error(err));

Di sini bilangan maksimum sambungan juga ditetapkan kepada 1000.

Di atas ialah tiga kaedah untuk menetapkan bilangan maksimum sambungan dalam Node.js. Mana-mana kaedah membolehkan kami mengurus bilangan sambungan rangkaian untuk aplikasi Node.js dengan lebih fleksibel, dengan itu mengelakkan penggunaan sumber pelayan yang berlebihan dan meningkatkan prestasi dan kestabilan aplikasi.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan bilangan maksimum sambungan dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn