Domanda

Ho appena visto l'ultimo Canale 9 vid sulle prossime estensioni parallele a .NET. Come lo useresti in un'app Web? Sto specificamente pensando di utilizzare le estensioni Linq parallele contro un db SQL. Avrebbe senso utilizzare questo come un modo per accelerare il livello di accesso ai dati in un'app server multiutente? Quali sono i problemi (a parte gli ovvi problemi di sicurezza dei thread che utilizzano tipi di raccolta statici)?

È stato utile?

Soluzione

Penso che questo paragrafo estratto da questo articolo spiega l'uso di PLINQ-to-SQL:

  

LINQ-to-SQL e LINQ-to-Entities   le query verranno comunque eseguite dal   rispettivi database e query   provider, quindi PLINQ non offre a   modo di parallelizzare quelle query. Se   di cui si desidera elaborare i risultati   quelle query in memoria, tra cui   unendo l'output di molti   query eterogenee, quindi PLINQ può   essere abbastanza utile.

Per quanto riguarda l'utilizzo di PLINQ in un'app Web, se la richiesta richiede molti calcoli in memoria in PLINQ di streghe potrebbe essere utile (come se si dispone di più origini dati che si desidera interrogare insieme) Non vedo problemi nell'usarlo.

Altri suggerimenti

Parallel LINQ è pensato principalmente per lavorare contro raccolte in memoria, credo. Come ti aspettavi di usarlo contro il tuo database?

Dato che le webapp sono naturalmente piuttosto parallele (in termini di richieste separate eseguite su thread separati ecc.) Sospetto che PLINQ non si applicherà molto ad esso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top