Attualmente sto lavorando con un database molto grande (> 50 GB) e sto cercando di capire l'approccio più efficiente e utilizzabile che funzioni bene con il threading intrinseco di Akka.Sincronizzazione di sessioni, efficienza e threading di database in Akka
Per quanto riguarda l'approccio "avvolgere tutto all'interno diSession {}", mentre questa sarebbe una soluzione più semplice, sono preoccupato che ciò limiti il threading di Akka tra gli attori. Non sono così ben informato su come funziona il threading di Akka, e su come avvolgere un intero sistema di attori all'interno di withSession lo farebbe.
Un altro approccio consiste nel chiamare withSession ogni volta che si accede al database, che è troppo inefficiente. Il segmento di codice "withSession {" richiede ~ 6 ms per essere eseguito e stiamo facendo milioni di query.
In sostanza: qual è il modo migliore per accedere rapidamente a un database con Slick e Akka senza interrompere il threading?
Ho sentito parlare di approcci che utilizzano sessioni e transazioni implicite, ma non riesco a trovare la documentazione su nessuno di questi.
Vedere [questa risposta] (http://stackoverflow.com/a/16834855/406435) per ottenere alcuni consigli. – senia
In che modo è possibile interfacciare un ExecutionContext con Sessions? Oppure la soluzione migliore sarebbe semplicemente mettere tutto il codice di accesso al database in un diverso ExecutionContext rispetto al resto? – TreeWhale
È possibile creare N attori, ciascuno con una propria sessione. Ogni attore dovrebbe utilizzare la propria sessione e tutte le comunicazioni con il database dovrebbero essere passate attraverso questo gruppo di attori. – senia