sql >> Database >  >> NoSQL >> Redis

Waarom moet ik Redis-verbindingen sluiten of open houden?

Over het algemeen is het openen van een verbinding een dure operatie, dus moderne best practices zijn om ze open te houden. Aan de andere kant vereisen open verbindingen middelen (uit de database) om te beheren, dus het openhouden van veel inactieve verbindingen kan ook problematisch zijn. Deze afweging wordt meestal opgelost door het gebruik van verbindingspools.

Dat gezegd hebbende, wat interessanter is, is waarom PHP segfault. De time-out wordt blijkbaar veroorzaakt door een langlopende opdracht (CLI-script in jouw geval) die Redis (die meestal single-threaded is) blokkeert van het bijwonen van de verbindingen van de PHP-app. Hoewel dit een bekend Redis-gedrag is, zou ik verwachten dat PHP (gebeurtenis zonder opnieuw verbinden in de clientbibliotheek) niet zo ellendig zou zijn.



  1. 5 manieren om het uur van een date te krijgen in MongoDB

  2. MongoDB $concat

  3. findOne Subdocument in Mongoose

  4. Binnenste array-elementen uit meerdere documenten in gesorteerde vorm retourneren