21 FAQ
- Outbound calls are slow during high load
This may be caused by connection handshake overhead. If a new handshake is performed for every request instead of reusing existing connections, performance will degrade significantly under high load.
HTTP connection pooling must be enabled and configured to eliminate the overhead of repeated handshakes using below properties
Table 21-1 Parameters
Parameters Default Values obrh.rest.connectionpool.enabled false true / false obrh.rest.connectionpool.totalConnectionCount 20 <POOL_TOTAL_CONN_COUNT> obrh.rest.connectionpool.maxConnectionCountPerRoute 2 <POOL_MAX_CONN_PER_ROUTE> obrh.rest.connectionpool.timeToLive.ms -1 <POOL_TTL> - Default request auditing approach causing performance degradation under high load Transition to Kafka or JMS auditing to eliminate the overhead of the audit API calls that occur with the default approach using property obrh.audit.type.
- Thread Starvation in the TaskExecutor Pool
A small thread pool causes blocking during high load, where routing hub integration calls wait for a free thread, degrading overall system throughput.
This can be addressed by configuring the thread pool using below properties:Table 21-2 Tomcat Deployment
Parameters Default Values obrh.taskexecutor.corepoolsize 50 <CORE_POOLSIZE> obrh.taskexecutor.maxpoolsize 50 <MAX_POOLSIZE> obrh.taskexecutor.queuecapacity 100 <QUEUE_CAPACITY> - Request Auditing (Kafka Approach) fails for messages exceeding the default 1 MB size
limit.
This requires to increase request size with following steps:
- Increase the max request size for cmc-obrh-services (Client)
Add the below key with value in properties table for cmc-obrh-services application.
Key: spring.kafka.producer.properties.max.request.size
Value: <MAX_SIZE_IN_BYTES>
Note:
"cmc-obrh-service" service restart is required. - Increase the max request size for Kafka (Server)
Execute the below command to increase the size only for routing hub audit topic.
SASL_SSL protocol
sh kafka-configs --bootstrap-server <KAFKA_HOST>:<KAFKA_PORT> \
--alter --entity-type topics \
--entity-name rh-audit-message \
--add-config max.message.bytes=<MAX_SIZE_IN_BYTES> \
--command-config <CLIENT_SSL_PROPERTIES_FILE_PATH>
PLAINTEXT protocol
sh kafka-configs --bootstrap-server <KAFKA_HOST>:<KAFKA_PORT> \
--alter --entity-type topics \
--entity-name rh-audit-message \
--add-config max.message.bytes=<MAX_SIZE_IN_BYTES>
Note:
No Kafka-Zookeeper restart is required. - Increase the max request size for cmc-obrh-services (Client)