sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvornår skal man bruge Singleton vs Transient vs Request ved hjælp af Ninject og MongoDB

Generelt i en webapp vil du have, at staten skal være anmodningsomfang så meget som muligt.

Kun i tilfælde af optimeringer på meget lavt niveau er det sandsynligt, at du nogensinde vil løbe ind i et tilfælde, hvor det er passende at skabe singleton-objekter (og chancerne er selv da, at du trækker en sådan caching-/delingslogik ud i en anden klasse, som bliver trukket ind som en afhængighed af dine andre [request scope] objekter og gør det singleton scope). Husk, at en singleton i forbindelse med en webapp betyder flere tråde, der bruger de samme objekter. Dette er sjældent gode nyheder.

På samme grundlag er transient scope den mest ligetil standard (og det er derfor, Ninject 2 gør det sådan) - request scope bør kun indgå i ligningen, når noget skal deles af præstationsmæssige årsager osv. (eller fordi det simpelthen er konteksten af delingen [som nævnt i det andet svar]).



  1. Mongodb er ikke opdateret korrekt fra 4.2 til 4.4

  2. Sejlsjs. Bedste måde at oprette (og administrere) indekser på sails-mongo (mongodb)

  3. Hvordan henter man en værdi fra mongoDB efter dets nøglenavn?

  4. Implementering og konfiguration af MongoDB Shards med Ansible