In order to better utilize all the CPUs when scaling up, one of the following approaches should be used:
- Scale out client application instances which may result in better CPU bandwidth utilization when instances share Diego Cells with other instances.
- Scale up the number of CPUs available. Scaling up may result in high throughput but will not cause the application to utilize all available CPUs. You should also scale out application instances.
- Enable thread local connection pooling. This will cause higher connection counts on each server and may exceed that connection limit imposed by the servers. The current limit is 800 connections per server. There is currently no way to increase this limit on the servers.
Using CacheFactory
ClientCache cache = new ClientCacheFactory()
.setThreadLocalConnections(true)
…
.create();
Using Spring Boot Data GemFire or Spring Data GemFire. Add this value to application.properties
spring.data.gemfire.pool.thread-local-connections = true