After installing Talend Administration Center (TAC), ensure your environment is completely configured so you won't run into any common issues.
TAC, when deployed through Talend installer, is installed with 2 GB of RAM in the preconfigured Apache Tomcat versions 7, 8, and 9, depending on what version of TAC you are installing. For each version of Talend, this is only a sufficient amount of memory if the TAC that you are installing is for a small POC or testing with a Sandbox.
To increase the amount of memory that TAC is using when installed as a Windows service is to either make sure that your service has the .exe name, which in 7.x is already the case. However, in earlier versions, you can use the .bat files (service.bat remove or service.bat remove servicename) under apache-tomcat/bin/service.bat.
Increase the ulimit to a value higher than the initial 1024, that most servers start with, for the -n parameter.
Update both the nofile and the nproc settings to 64k in the /etc/security/limits.conf file, which is virtually unlimited for the user and group that are running the Talend processes.
For more information, see the RedHat How to set ulimit values page.
To prevent the following error message:
"...the cache because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache"
Edit your apache-tomcat/conf/context.xml file, then before </Context> add the following block:
<Resources cachingAllowed="true" cacheMaxSize="100000" />
This increases the default cache from 25 MB to 100 MB and prevents the Tomcat, at times, from loading properly if you are using a lot of webapps.
Ensure that your webapp has sufficient threads, by editing the Talend\7.x.x\tac\apache-tomcat\webapps\org.talend.administrator-7.x.x\WEB-INF\classes\configuration.properties file, and increasing the hibernate.c3p0.max_size=32 parameter from 32, to the number of concurrent running Jobs, plus the typical amount of users logged in to Studio and TAC.
For example, during your peak hours, 200 Jobs are added to the Job Conductor, 40 Jobs are running, 10 development users are in Studio, and two administrative users are in TAC. In this scenario, set the hibernate parameter as follows:
The thread count, org.quartz.threadPool.threadCount = 30, can be the same as the configuration.properties file, hibernate.c3p0.max_size parameter in the configuration.properties file, using the formula that was included.
This property is equal to your thread count plus an additional three. For example, if the thread count is 30, then the org.quartz.dataSource.QRTZ_DS.maxConnections should be 33.
org.quartz.dataSource.QRTZ_DS.maxConnections = 30
configuration.properties and quartz.properties general configuration rule:
hibernate.c3p0.max_size > org.quartz.dataSource.QRTZ_DS.maxConnections
TAC backend database servers have a limited amount of database connections that are allowed. The number of database connections that are allowed by the chosen database needs to be higher than that of the org.quartz.dataSource.QRTZ_DS.maxConnections parameter in the quartz.properties file.
For example, MySQL, by default, has 151 maximum connections allowed, thus the org.quartz.dataSource.QRTZ_DS.maxConnections cannot be more than 150 so that your database has a connection allowed for the admin user even when TAC is using all of its database connections.