sql >> Databasteknik >  >> NoSQL >> MongoDB

Undantag för socket timeout i Mongo

Uppstod dessa time-outs efter perioder av inaktivitet? Det är troligt att din anslutningspool blev inaktuell efter att ha varit inaktiv för länge.

Om så är fallet finns det två sätt att gå tillväga:

  1. Fånga undantagen för socket timeout, och din omedelbara begäran bör kunna få tillgång till en ny anslutningspool. (detta är om alternativet för automatisk återanslutning i ditt anslutningsobjekt lämnas till sant, vilket är standard.)

  2. Använd en anpassad keep-alive för att pinga mongod-servern med jämna mellanrum med samma anslutningspool, så att poolen förblir fräsch.

Alternativ 1 är lätt att implementera, men standarduttagets timeout är runt 30s vilket är ganska överdrivet. Du kan ändra den här inställningen efter behov.

Alternativ 2 är lite av ett hack, som involverar trådning.




  1. Kör inbyggd mongodb-fråga med mongodb java-drivrutin

  2. Hur $set Update Operator fungerar i MongoDB

  3. Hur tar man bort en gammal version av mongodb och installerar den nya i cloud9 IDE?

  4. MongoDB:Får du listan över alla databaser?