Soru Mongo'da SocketException günlükleri


Şu ana kadar 4 aydır mongo koşuyoruz, ama son zamanlarda çok fazla şey görüyorum

SocketException handling request, closing client connection: 9001 socket exception [2] server [127.0.0.1:58996]

Bu hatanın nedenini nasıl bilebilirim? Kod sorunu veya yönetici yapılandırmasıyla mı ilgili?

Fedora 16 sunucumuz var, mongo versiyon 2.0.7


7
2017-09-14 08:24


Menşei




Cevaplar:


Öncelikle, bir göz atın ve burada ana hatlarıyla belirtilen adımları izleyin:

http://www.mongodb.org/display/DOCS/Troubleshooting#Troubleshooting-Socketerrorsinshardedclustersandreplicasets

Ardından, hedef ana bilgisayardaki tüm ulimit sorunlarına bakın (yeni bir soket için yeni bir dosya tanıtıcısı gereklidir ve hataya neden olabilir):

http://www.mongodb.org/display/DOCS/Too+Many+Open+Files

Son olarak, boşta olmadıklarında kullanılmayan boş bağlantılarla ilgili birkaç sorun vardır ve bu da bu tür bir soruna katkıda bulunabilir:

https://jira.mongodb.org/browse/SERVER-5793

A kadar SUNUCU-5632 tamamlandı, burada tek çare mongod / mongos süreçlerini yeniden başlatarak bağlantıları yıkamak için.


5
2017-09-14 19:18





İmleç sorguma bir batchSize seçenek arg ekleyerek gerçekleşmesini durdurmak için var

Örneğin. önce:

var cursor = db.collection('images').find( {}, {"_id": 1} ).sort({"_id": 1});

sonra:

var cursor = db.collection('images').find( {}, {"_id": 1} ).sort({"_id": 1}).batchSize(1000);

Bu daha pürüzsüz (birçok başlangıç ​​/ durma değil) ve daha az kötü mesaj ile çalıştı. Aslında yok.


2
2017-09-30 01:49