Sambungan pangkalan data (ditulis sementara dalam app.js)
var options = {
server: {
poolSize: 100,
auto_reconnect: true,
keepAlive: 10
}
}
var db = mongoose.connect(settings.MONGODB_URL,options);
Soalan:
1. Masukkan data dalam kelompok dan ia akan muncul selepas beberapa ketika:
MongoError: sambungan 95 ke xxx.xxx.xxx tamat masa
2. Apabila ralat di atas berlaku, semua operasi pangkalan data yang berkaitan tidak akan berjalan Adakah sambungan antara program dan pangkalan data terputus? Adakah tetapan sambungan pangkalan data salah, atau mungkin masalah pangkalan data?
3. Apabila saya menjalankan ujian ab berkonkurensi tinggi, 2 fenomena di atas juga akan berlaku. Adakah tetapan berkaitan kolam sambungan tidak betul?
Pertama sekali, perhatikan isu kumpulan sambungan
mongoose.connect
hanya perlu dipanggil sekali Objek yang dikembalikan mengekalkan kumpulan sambungan Jika dipanggil berulang kali, sambungan akan dibuka dan ditutup secara berterusan, yang sangat mempengaruhi prestasi.Selepas pengesahan, anda harus menyemak berapa banyak tekanan yang anda berikan padanya dan sama ada ia telah menduduki semua sumber yang ada Anda boleh melihat log mongodb untuk melihat bilangan sambungan yang dibuka pada masa yang sama. Anda juga boleh melihat sumber mesin yang tinggal.