Планировщик Spring не запускается как запланировано - PullRequest
0 голосов
/ 28 октября 2019

Я использую функцию планировщика Spring для запуска Spring batch jobLauncher каждые 15 секунд. Этот JobLauchner затем породил около 200 весенних пакетных заданий. Когда я запускаю на своем локальном компьютере, для spawn задание настроено на 10 пакетных заданий вместо 200. Планировщик работает без сбоев, он запускается точно каждые 15 секунд, каждый раз создает 10 заданий.

Однако, когда язапустить на сервере, планировщик не работает должным образом, он не запускается каждые 15 секунд, но может длиться 3 или 10 минут, не исправить, он вообще не выдает исключение. Конечно, jobLauncher по-прежнему порождает 200 заданий, как и ожидалось, каждый раз, когда он запускается планировщиком. Только этот планировщик не запускается каждые 15 секунд, поэтому общее количество запущенных пакетных заданий за каждую минуту не будет занимать огромных данных.

Я полагаю, что на сервере недостаточно оперативной памяти, поэтому планировщик не может работатьбольше тем, но не уверен.

    @Scheduled(fixedRateString = 15000)
    public void launchBatchJobs( ) {

        JobParameters parameter = new JobParameters(mapJob);
        try {
            JobExecution jobExcution = jobLauncher.run(dataPartitionJob, parameter);
        } 
        catch (JobExecutionAlreadyRunningException | JobInstanceAlreadyCompleteException | JobRestartException | JobParametersInvalidException e) {
            logger.error("error happens");
        }   
     }
...