По умолчанию все агенты в Битриксе выполняются на хитах. Для ускорения работы сайта в целом необходимо выполнение агентов переложить на cron.
И так к делу, заходим в командную PHP-строку в административной части сайта:
Настройки / Инструменты / Командная PHP-строка
Для отключения выполнение всех агентов на хитах выполняем следующую команду:
COption::SetOptionString("main", "agents_use_crontab", "N");
echo COption::GetOptionString("main", "agents_use_crontab", "N");
COption::SetOptionString("main", "check_agents", "N");
echo COption::GetOptionString("main", "check_agents", "Y");
В результате выполнения должно быть «NN».

Далее, открываем файл (путь к файлу) :
bitrix/php_interface/dbconn.php
Находим и удаляем данные строки, если они существуют. По моему в новой редакции Битрикса они уже отсутствуют.
define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);
И добавляем в этот файл следующее:
if(!(defined("CHK_EVENT") && CHK_EVENT===true))
define("BX_CRONTAB_SUPPORT", true);

Создаем файл с именем «cron_events.php» для проверки агентов и рассылки системных сообщений в папке:
bitrix/php_interface/
Со следующим кодом:
<?php
$_SERVER["DOCUMENT_ROOT"] = realpath(dirname(__FILE__)."/../..");
$DOCUMENT_ROOT = $_SERVER["DOCUMENT_ROOT"];
define("NO_KEEP_STATISTIC", true);
define("NOT_CHECK_PERMISSIONS",true);
define('BX_NO_ACCELERATOR_RESET', true);
define('CHK_EVENT', true);
define('BX_WITH_ON_AFTER_EPILOG', true);
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
@set_time_limit(0);
@ignore_user_abort(true);
CAgent::CheckAgents();
define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);
CEvent::CheckEvents();
if(CModule::IncludeModule('sender'))
{
\Bitrix\Sender\MailingManager::checkPeriod(false);
\Bitrix\Sender\MailingManager::checkSend();
}
require($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/tools/backup.php");
?>

Вот далее самое сложное. Необходимо добавить скрипт для запуска cron на Вашем сервере. Если для управления сервера Вы пользуетесь панелью ISPmanager, то заходим в:

В строке «Команда» вставляем путь к файлу «cron_events.php»:
/usr/bin/php /var/www/ВАШ САЙТ/data/www/ВАШ САЙТ/bitrix/php_interface/cron_events.php
Соответственно вместо «ВАШ САЙТ» вставьте папку где хранится Ваш сайт. Правильный путь можно посмотреть в «Менеджере файлов» панели управления ISPmanager.
/usr/bin/php — этот путь зависит от версии, которая используется в работе сайта, посмотреть можно в настройках сайта.

В строке «Описание» подробно напишите за что отвечает данный cron.
В строке «Расписание» поставьте «экспертный режим».
Далее в строках «Минуты», «Часы», и т. д. везде ставим «*», чтобы задание выполнялось каждую минуту.
В строке «Не отправлять отчет по e-mail» ставим галочку, а то каждую минуту будет приходить письмо об успешном выполнении.
Вот и всё.
Проверить выполняются ли агенты каждую минуту можно в административной части Вашего сайта. Заходим:
Настройки / Настройки продукта / Агенты
Находим агента с интервалом выполнения в 60 секунд, смотрим на время последнего запуска. Ждём минуту, или более, обновляем страницу. Время последнего запуска должно изменится на минуту вперёд или более, зависит от того, сколько времени Вы не обновляли страницу.