Da BoneCP doc ufficiale: http://jolbox.com/index.html?page=http://jolbox.com/configuration.htmlUna spiegazione migliore per partitionCount in BoneCP
partitionCount Per ridurre i conflitti di blocco e migliorare le prestazioni quindi, ogni richiesta di connessione in ingresso raccoglie disattivazione di una connessione da una piscina che ha affinità di thread, ovvero pool [threadId% part_count]. Più alto è questo numero, migliori saranno le prestazioni per il caso in cui ci sono molti thread di breve durata. Oltre una certa soglia, la manutenzione di questi pool inizierà a ha un effetto negativo sulle prestazioni (e solo per il caso in cui le connessioni in una partizione iniziano a scadere).
default: 2, minima: 1, consigliata: 3-4 (ma molto app specifica)
Ma non è così chiaro e non hanno un buon esempio. Sto eseguendo un normale servizio web, con 0-500 thread simultanei. Qual è un buon valore e perché?
Autore BoneCP qui: Questa spiegazione è perfetta. Vorrei solo aggiungere che avere più partizioni significa anche che in genere ogni partizione ha un minor numero di connessioni configurate (dato che sono suddivise). Se un thread tenta di colpire una partizione esaurita, si rovescia per provare a prendere una connessione dalle altre partizioni, quindi a un certo punto inizia a rallentare. Dato che i javadoc dicono di attaccare a circa 3-4 al massimo (non è un buon suggerimento nemmeno un core). – wwadge
@ user149789 e Mirko, quindi per quelli di noi che eseguono le nostre applicazioni basate su JVM su istanze cloud micro, dove single core sono la norma, suona come partitionCount deve essere impostato su 1. Benchmarking oggi sono stato sorpreso di vedere che le connessioni utilizzate massime in il mio database non era 48 (ho config 3 partitionCount * 16 maxConnectionsPerPartition), ma piuttosto solo 16 O_o – virtualeyes
Se devo fare i conti con connessioni parallele per eseguire almeno 2 operazioni di Statement e quelle connessioni sarebbero ~ 30. Potresti dirmi le dimensioni della partizione? È necessario impostare 30? Inoltre, se potessi dire altri parametri coinvolti nell'impostazione di BoneCPDataSource? – Sanchit