Jump to: navigation, search

CCAdv Deployment Architecture and Recommendations for Optimal Performance

The following table describes the high-level dimensions controlling the environment used to achieve the results described in Load-Carrying Capacity.


Contact Center Advisor Presentation Object Configuration
Object Count
Geographic Regions 1
Contact Centers 40
Reporting Regions 20
Operating Units 1
Application Groups 150
Applications 1600
Agent Groups 3200 (2 for each application)

The following diagram shows the environment topology used to successfully achieve 1500 concurrent users of Contact Center Advisor (CCAdv). "VM" is a virtual machine. The Aggregation Instance performs data aggregation; the Presentation Instance services the dashboard.

Contact Center Advisor Environment Topology


Contact Center Advisor Presentation Machine and VM Information

The following table describes the characteristics of the hardware and virtualization environment shown in the figure, Contact Center Advisor Environment Topology, which supports 1500 concurrent users of CCAdv.

Server # of Processors Processor Type # of Cores Total Cores RAM OS Application
Server 1:

VM-Host

2 Intel Xeon X5675 @ 3.07GHz 6 24 logical cores with hyper-threading 32 GB VMWare ESXi 5.0 Standard 64bit
Server 1:

VM-1

2 Same as host 4 8 12 GB Windows Server 2008 Standard SP2 64bit MS SQL (Advisor database), Apache Geronimo CAXML on Advisors Platform), XML Generator Simulator, Apache
Server 1:

VM-2

2 Same as host 1 2 1.5 GB Windows Server 2003 Standard SP2 64bit

NOTE: At the time of testing, Genesys supported Windows Server 2003. In your enterprise, be sure to use a Genesys-supported operating system.

Configuration Server
Server 1:

VM-3

2 Same as host 4 8 8 GB Windows Server 2008 R2 Standard SP1 64bit Apache Geronimo CAXML on Advisors Platform), Apache
Server 2 1 Intel Xeon X3440 @ 2.53GHz 4 4 8 GB Windows Server 2008 R2 Standard SP1 64bit Dashboard simulator
Server 3:

VM-Host

2 Intel Xeon X5675 @ 3.07GHz 6 24 logical cores with hyper-threading 32 GB VMWare ESXi 5.0 Standard 64bit
Server-3:

VM-1

2 Same as host 4 8 8 GB Windows Server 2008 R2 Standard SP1 64bit Apache Geronimo CAXML on Advisors Platform), Apache

Recommendations for Contact Center Advisor Performance Improvement

The following table describes settings you can change to improve Contact Center Advisor performance.

Location Sub-directory or File, where applicable Settings
On each CCAdv node <CCAdv home>\geronimo-tomcat6-minimal-2.2.1\bin\setenv.bat
Tip
Starting with release 8.5.2, the path to the setenv.bat file changes to <CCAdv home>\apache-tomcat-<version>\bin\setenv.bat.
Change
  GERONIMO_OPTS=-ms128m -mx1024m
  -XX:MaxPermSize=128m

To

  GERONIMO_OPTS=-Xms6g -Xmx6g 
  -XX:MaxPermSize=256m

Starting with release 8.5.2, GERONIMO_OPTS becomes CATALINA_OPTS. In addition, the XX:MaxPermSize setting no longer exists in the setenv.bat file. So, starting with release 8.5.2, you make the following change in the setenv.bat file:

Change

CATALINA_OPTS=-ms1024m -mx2048m

To

CATALINA_OPTS=-Xms6g -Xmx6g
<CCAdv home>\geronimo\var\catalina\server.xml Under the <Connectorname="TomcatAJPConnector"> section, add maxThreads="1600"
Tip
Starting with release 8.5.2, you do not change the TomcatAJPConnector setting because it does not exist.
On CCAdv presentation nodes only <CCAdv home>\geronimo-tomcat6-minimal-2.2.1\var\config\config-substitutions.properties Set MaxThreadPoolSize to "3000"
Tip
Starting with release 8.5.2, the config-substitutions.properties file does not exist. To change the value of the MaxThreadPoolSize setting, you update the following file: <CCAdv home>\apache-tomcat-<version>\config\catalina.properties.
Dashboard administration setting For optimal performance:
  • Select independent configuration mode (not integrated configuration mode)
  • Set Show Totals and Averages to No
Advisors Platform database For optimal performance of CCAdv/WA, you can turn off agent monitoring. For release 8.1.5, see the Disabling the agent level statistics templates for CCAdv procedure in the Performance Management Advisors 8.1 Deployment Guide. For release 8.5.0 and later, see Enable and Disable Agent-level Monitoring.
On AGA Releases 8.1.5 and 8.5.0:

<AGA home>\conf\wrapper.conf

Release 8.5.1 and later:
conf\run.bat (Windows)
bin\setenv.sh (Linux)

Releases 8.1.5 and 8.5.0:

Change

  Wrapper.java.initmemory=128
  Wrapper.java.maxmemory=1024

To

  Wrapper.java.initmemory=4096
  Wrapper.java.maxmemory=14336

Release 8.5.1 and later:
In the JAVA_OPTS parameter, change

  -ms128m
  -mx1024m

To

  -ms4096m
  -mx14336m
<AGA home>\conf\inf_genesys_adapter.properties Change
  informiam.genesys_connector.stat
  Server.maxOpenReqsPerGroup = 1000
  informiam.genesys_connector.stat
  Server.messages.queuesize = 500000
  informiam.genesys_connector.GC
  StatisticsObjectDao.batchSize
  Overide = 100
  informiam.genesys_connector.stats
  issue.pausechecklimit = 5000

To

  informiam.genesys_connector.stat
  Server.maxOpenReqsPerGroup = 6000
  informiam.genesys_connector.stat
  Server.messages.queuesize = 350000
  informiam.genesys_connector.GC
  StatisticsObjectDao.batchSize
  Overide = 1000
  informiam.genesys_connector.stats
  issue.pausechecklimit = 10000
Important
The informiam.genesys_connector.statsissue.pausechecklimit parameter is applicable only to releases earlier than 8.5.1.
On each Apache HTTP proxy httpd.conf
  • Uncomment or add the following modules:
    LoadModule deflate_module modules/mod_deflate.so
    LoadModule headers_module modules/mod_headers.so
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
  • Add the following block to increase the number of Apache worker threads (note that this is for a Windows-based server):
  <IfModule mpm_winnt_module>
  ThreadsPerChild 512
  MaxConnectionsPerChild 0
  </IfModule>
  • If you use a Linux server, add the following block:
  <IfModule mpm_event_module>
  StartServer 6
  ServerLimit 32
  MinSpareThreads 150
  MaxSpareThreads 250
  ThreadsPerChild 25
  MaxRequestWorkers 800
  MaxConnectionsPerChild 0
  </IfModule>
  • Add the following to enable a request response proxy:
    ProxyPass /am/ ajp://localhost:8009/am/
    ProxyPass /admin/ ajp://localhost:8009/admin/
    ProxyPass /am-admin/ ajp://localhost:8009/am-admin/
    ProxyPass /ca/ ajp://localhost:8009/ca/
    ProxyPass /ca-ws/ ajp://localhost:8009/ca-ws/
    ProxyPass /ea-ws/ ajp://localhost:8009/ea-ws/
    ProxyPass /base-ws/ ajp://localhost:8009/base-ws/
    ProxyPass /dashboard/ ajp://localhost:8009/dashboard/
    ProxyPass /nav-service/ ajp://localhost:8009/nav-service/
    ProxyPass /prefs-service/ ajp://localhost:8009/prefs-service/
    ProxyPass /wu/ ajp://localhost:8009/wu/
    ProxyPass /rmc/ ajp://localhost:8009/rmc/
    ProxyPass /gc-admin/ ajp://localhost:8009/gc-admin/
    ProxyPass /ca-xml/ ajp://localhost:8009/ca-xml/

Best Practices for Contact Center Advisor Sizing

Use the following notes and best practices for optimizing CCAdv performance:

  • Use Gigabit connectivity between the CCAdv aggregation node (runs CCAdv XML Generator) and CCAdv presentation node(s).
  • Enable an Apache JServ Protocol (AJP) connection between the Apache HTTP proxy and CCAdv presentation node(s).
  • Allocate as much CPU resource to CCAdv as possible; CCAdv performance is improved if you provide multiple CPU cores and faster clock speeds.
  • Allocate sufficient memory for CCAdv components (Genesys recommends 6GB).
  • Genesys recommends increasing the number of presentation nodes if the dashboard request response time exceeds acceptable thresholds.
  • Apply role-based access control to minimize the number of hierarchy objects and metrics that each user can access.
  • Regarding Stat Server performance:
    • Stat Server is a single threaded process. Carefully monitor the CPU usage of your Stat Server(s).
    • Consider adding more Stat Server pairs if a Stat Server is saturating a CPU. You may require up to four pairs of Stat Servers for best performance.
  • Regarding XML Generator performance:
    • Increasing the "Thirty Mins And Today" metrics processing cycle duration reduces XML Generator processing overhead. The configuration parameter name is generationForThirtyMinsAndToday (default=120s) and it is located in the following file:
      <XML Generator home>\conf\xmlgen.properties
    • Performance improves with a small number of objects and degrades with a large number of objects, however a large number of reporting regions, geographic regions, and/or contact centers causes less degradation than a large number of operating units and/or application groups.
    • The number of columns displayed on the dashboard does not impact XML Generator performance.
  • Regarding metrics graphing:
    • The greatest impact to load for the metrics graphing feature is against the aggregation node (XML Generator), not the presentation nodes.
    • The key scaling factor is the number of graphable metrics:
      • The XML Generator CPU usage scales up linearly with the number of graphable metrics. Up to 15 graphable metrics are supported.
    • The number of users and number of requests for distinct graphs has minimal impact on performance.

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on April 26, 2018, at 19:32.