Dit originale design er baseret på sunde principper. Hvis det hjælper din sag, er denne strategi kendt som horisontal partitionering eller sharding . Det giver:
1) Større skalerbarhed - fordi hvert skår kan leve på separat hardware, hvis det er nødvendigt.
2) Større tilgængelighed - fordi fejlen i et enkelt skår ikke påvirker de andre shards
3) Større ydeevne - fordi de tabeller, der søges i, har færre rækker og derfor mindre indekser, hvilket giver hurtigere søgninger.
Din kollegas forslag flytter dig til en enkelt fejlopsætning.
Med hensyn til dit spørgsmål om 3 forbindelsespuljer på størrelse 10 vs 1 forbindelsespulje på størrelse 30, er den bedste måde at afgøre den debat med et benchmark. Konfigurer din app hver vej, og lav derefter nogle stresstest med ab (Apache Benchmark) og se, hvilken måde der fungerer bedst. Jeg formoder, at der ikke vil være en væsentlig forskel, men gør benchmark for at bevise det.