Skip to main content
Skip table of contents

CX Performance

Summary:

The load tests were conducted on cloud machines and all the hardware/software details are given below. After running tests on different load we came to the conclusion that our EFCX software can support maximum 900 concurrent conversations, with a maximum of 4 conversation per second frequency of incoming conversations and with 1 message every 5 seconds for every chat (900) in the system (i.e. 180 messages per second).

EFCX Performance Test Results

  • Hardware / Software

    • EFCX Machine (c5n.4xlarge)

      • vCPU = 16

      • Memory = 42 GB

      • Hard Disk = 200 GB (15000 IOPS Recommended)

      • EFCX 4.7

    • Stubs/Mocks Machine (t3.2xlarge)

      • vCPU = 8

      • Memory = 32 GB

      • Hard Disk = 200 GB

      • Agent-Manager-Stub:cx-4.5.7

        • Login agents

        • Change state from Not Ready to Ready

        • Auto Answer chats

        • Send messages

        • Close chats

        • Expose stats

      • Channel-Connector-Stub:2.1.8

        • Initiate chats

        • Send messages

        • Respawn chats

        • End chats

        • Expose stats

      • Node-Red

        • KeyCloak Stub

          • Create Agents

          • Assign Groups

          • Assign Roles

          • Assign Teams (If Required)

        • Assign Routing Attributes Stub

          • Assign attributes to agents

        • Assign EFCX Teams Stub

          • Assign agents to team(s)

        • Prometheus/Grafana

          • Monitoring solution

  • Load Test Configuration:

    • Number of Queues = 8

    • Agent MRD value = 5 (For all agents)

    • Agent Attributes = 8 (Assigned to all agents)

    • Wrap-up is disabled

    • All queues have same queue priority

    • Last agent routing is off

    • 1 replica of CCM

    • 3 replicas of Conversation Manager

    • ef-redis-custom-values.yaml

      • resources:
        limits:
        cpu: "2"
        memory: 8Gi
        requests:
        cpu: "1"
        memory: 2Gi

    • ef-mongodb-custom-values.yaml

      • livenessProbe:
        enabled: true
        initialDelaySeconds: 50
        periodSeconds: 20
        timeoutSeconds: 20
        failureThreshold: 6
        successThreshold: 1

      • readinessProbe:
        enabled: true
        initialDelaySeconds: 50
        periodSeconds: 20
        timeoutSeconds: 20
        failureThreshold: 6
        successThreshold: 1

      • startupProbe:
        enabled: false
        initialDelaySeconds: 5
        periodSeconds: 20
        timeoutSeconds: 20
        successThreshold: 1
        failureThreshold: 30

  • Sample Configurations and Calculations

Agents

Conversation Frequency

Concurrent Customers

Total Customers

Session Duration

Test Duration

Message Frequency

Expected Message Count

Messages per sec

1

1 per sec

1

1

1 min

1 min

1 message per 5 sec

Max: 13

Average: 12

Min: 11

0.1833 Minimum

100

1 per sec

300

300

10 mins

12 mins

1 message per 5 sec

Max: 39000

Average: 36000

Min: 33000

55 Minimum

300

3 per sec

900

900

10 mins

15 mins

1 message per 5 sec

Max: 117000

Average: 108000

Min: 99000

165 Minimum

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.