Memposting ulang dari https://jira.mongodb.org/browse/NODE-1868:
Pesan penghentian kemungkinan karena client.connect
dipanggil berkali-kali. Secara keseluruhan, memanggil client.connect
beberapa kali saat ini (pada driver v3.1.13
) memiliki perilaku yang tidak ditentukan, dan tidak disarankan. Penting untuk dicatat bahwa setelah janji dikembalikan dari connect
diselesaikan, klien tetap terhubung sampai Anda memanggil client.close
:
const client = new MongoClient(...);
client.connect().then(() => {
// client is now connected.
return client.db('foo').collection('bar').insertOne({
}).then(() => {
// client is still connected.
return client.close();
}).then(() => {
// client is no longer connected. attempting to use it will result in undefined behavior.
});
Klien secara default memelihara beberapa koneksi ke setiap server yang terhubung, dan dapat digunakan untuk beberapa operasi simultan*. Anda seharusnya dapat menjalankan client.connect
sekali, dan kemudian menjalankan operasi Anda pada objek klien
* Perhatikan bahwa klien BUKAN thread-safe atau fork-safe, sehingga tidak dapat dibagikan ke seluruh fork, dan tidak kompatibel dengan cluster
node atau worker_threads
modul.