connection pooling and sharding concepts