21 FAQ

  1. 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>
  2. 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.
  3. 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>
  4. Request Auditing (Kafka Approach) fails for messages exceeding the default 1 MB size limit.

    This requires to increase request size with following steps:

    1. 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.
    2. 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.