Todos os produtos
Search
Central de documentação

Microservices Engine:Java SDK

Última atualização: Sep 06, 2026

Este tópico descreve as alterações de recursos em cada versão do SchedulerX Java SDK, incluindo novos recursos, otimizações e correções para problemas críticos. Utilize-o para acompanhar os lançamentos do Java SDK.

Notas sobre atualização de versão e descontinuação

Recomendações de atualização

Atualize o SchedulerX Java SDK diretamente para a versão mais recente, que é a 1.13.5. Não é necessário parar ou modificar jobs de agendamento existentes antes da atualização. Como o SDK está integrado à sua aplicação de negócios, execute testes completos de integração após a atualização para detectar possíveis conflitos de JAR.

Impacto da descontinuação de versão

O console exibe o status do ciclo de vida da versão do cliente SDK em páginas como Application Management e Job Management:

Status

Descrição

Stable**

Versão recomendada atual. Oferece compromissos completos de SLA e suporte técnico.

Expired**

A versão expirou. Os jobs de agendamento existentes continuam funcionando normalmente, mas não há compromisso de SLA. Atualize assim que possível.

Deprecated**

A versão foi descontinuada. Os jobs de agendamento existentes continuam funcionando normalmente, mas não há compromisso de SLA. Para obter suporte técnico, primeiro atualize para a versão mais recente. Atualize imediatamente.

Nota

Uma versão com status Expired** ou Deprecated** não interrompe jobs de agendamento já em execução, mas não oferece garantia de SLA nem suporte técnico. Atualize o SDK para uma versão Stable** em tempo hábil.

Consulta de versões compatíveis

Antes de atualizar, revise as tabelas de histórico de versões mais adiante neste tópico. Cada entrada descreve os recursos, correções e notas de compatibilidade de uma versão, permitindo que você escolha uma versão compatível adequada como alvo de atualização.

2026

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.13.5

Novo recurso

Tarefas second_delay agora suportam desligamento gracioso.

Tarefas de script agora suportam transferência de dados upstream e downstream entre nós de fluxo de trabalho.

20 de março de 2026

Nenhuma

1.13.4

Otimização

Otimiza a coleta de CPU no modo de aplicação K8s para compatibilidade com o modo cgroup v2.

13 de fevereiro de 2026

Nenhuma

1.13.3

Otimização

Melhora a compatibilidade de tarefas Spring com Spring 7.x.

15 de janeiro de 2026

Nenhuma

2025

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.13.1

Problema corrigido

  • Correção do registro prematuro de heartbeat em contextos pai-filho do Spring.

  • Correção de tarefas Map que paravam inesperadamente durante uma atualização do SDK de uma versão anterior.

28 de julho de 2025

Nenhuma

1.13.0

Novo recurso

Adicionado suporte para criptografia de link para proteger dados sensíveis em trânsito entre o cliente e o servidor em aplicações da Professional Edition.

18 de junho de 2025

Nenhuma

1.12.7

Otimização

  • Refatoração da lógica de placeholder para tarefas de script para corrigir falhas de substituição causadas por conflitos do Spring.

  • Atualização da versão do Spring para 5.3.31 para corrigir uma vulnerabilidade de segurança.

29 de maio de 2025

Nenhuma

Problema corrigido

  • Corrige um problema em que a subtarefa 0 de tarefas broadcast e tarefas sharded não suportava nova tentativa automática em caso de falha.

  • Correção de um problema em que o context fornecia um triggerType incorreto durante a reexecução manual de um job MapReduce visual.

Nenhuma

1.12.5

Otimização

Melhoria na compatibilidade de tarefas Spring quando outros componentes implementam TaskScheduler.

8 de fevereiro de 2025

Nenhuma

1.12.3

Novo recurso

  • Adicionado suporte para configurar o diretório de log do SDK.

    • Adicione -Dschedulerx.log.path=<log_root_path> ao comando de inicialização. O caminho final do log será {schedulerx.log.path}/logs/schedulerx.

  • Adicionado suporte para substituir a configuração logback do SDK e exportar logs para seus próprios Logstores.

    • A configuração do Simple Log Service permite gravar logs em seu próprio Logstore.

      Para Logback, consulte Logback Appender.

      Para Log4j2, consulte Log4j Appender.

3 de janeiro de 2025

Nenhuma

Otimização

  • Melhoria na compatibilidade de tarefas Spring com Spring 6.x.

  • Correção de uma exceção H2 DriverClass NotFound causada pela ausência de configuração da classe de driver para uma conexão JDBC de negócios.

  • Correção de uma condição de corrida na verificação de status da tarefa Map que causava falhas na tarefa.

2024

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.12.2

Otimização

  • Correção de uma vulnerabilidade de segurança em jobs MapReduce visuais.

  • Correção de vulnerabilidades de segurança em algumas APIs Akka.

20 de novembro de 2024

Nenhuma

1.12.1

Novo recurso

  • Jobs de agente HTTP agora suportam tamanho personalizado de pool de threads.

  • Adicionado suporte para personalizar o logger para saída de log do SchedulerX.

  • Introdução da anotação @SchedulerX, que funciona com a anotação @Scheduled do Spring, permitindo que o SchedulerX gerencie alguns jobs agendados do Spring.

12 de outubro de 2024

Nenhuma

Otimização

  • Remoção do pacote fastjson para resolver uma vulnerabilidade de segurança.

Nenhuma

1.11.5

Otimização

  • Otimização da saída de log SLS.

  • Correção de um problema em que o relatório de heartbeat era afetado por erros de leitura de configuração em vários grupos de aplicações.

  • Redução do número de novas tentativas tolerantes a falhas para exceções de timeout de heartbeat.

17 de junho de 2024

Nenhuma

1.11.4

Novo recurso

Adicionado suporte para recuperar o ID do fluxo de trabalho a partir de JobContext.

20 de março de 2024

Job Context parameters

Otimização

  • Redução do tamanho do SDK mediante a remoção de dependências não utilizadas.

  • Remoção do arquivo Log4j2.xml não utilizado do SDK para evitar conflitos de configuração de log.

Nenhuma

1.11.1

Novo recurso

Adicionado suporte para obter parâmetros de job a partir de variáveis de ambiente.

20 de fevereiro de 2024

Nenhuma

Novo recurso

Adicionado suporte para isolamento no nível da aplicação.

Nenhuma

Problema corrigido

  • Correção de uma vulnerabilidade de segurança no Netty.

  • Correção de uma vulnerabilidade de segurança no Logback.

  • Correção de um problema em que logs do framework SchedulerX não eram exibidos devido a conflitos de log.

Nenhuma

1.10.14

Novo recurso

Adicionado suporte para desligamento gracioso. As aplicações aguardam a conclusão de todos os jobs em execução antes de encerrar, garantindo que liberações e reinicializações ocorram sem interrupções de service.

2 de janeiro de 2024

Graceful shutdown for scheduled jobs

Novo recurso

Adicionado suporte para configurar a taxa de distribuição para subtarefas.

Nenhuma

Novo recurso

Adicionado suporte para configurar nome de usuário e senha.

  • spring.schedulerx2.h2DatabaseUser: Define o usuário do banco de dados interno H2.

  • spring.schedulerx2.h2DatabasePassword: Especifica a senha para o banco de dados interno H2.

Connect a Spring Boot application to SchedulerX

Otimização

Adicionado suporte para isolamento por grupo de aplicações.

Nenhuma

Otimização

Adicionado suporte para distribuição ordenada por endereço IP do worker.

Nenhuma

Otimização

  • Adicionado suporte para versões anteriores do Spring 4.

  • Métodos agendados em jobs Spring agora suportam qualquer tipo de retorno.

Spring jobs

Otimização

  • Impede que o contêiner Spring crie threads de heartbeat duplicadas após reinicialização.

  • Adicionado suporte para reinicialização automática de Akka Actors caso terminem inesperadamente.

Nenhuma

Problema corrigido

  • Correção de um problema em que o Spring retornava imediatamente uma exceção se falhasse ao ler um bean Processor.

  • Correção de um problema introduzido na v1.10.x em que jobs Map ficavam travados.

  • Correção de um problema que impedia o término de uma instância de job após falha na execução de preProcess de um job broadcast.

  • Correção de um problema em que threads residuais acionavam alertas de timeout de execução de job após falhas de instância.

  • Correção de um problema no modo de pool de threads compartilhado em que um job podia travar devido à perda de estado logo após a inicialização da aplicação.

  • Correção de um problema em que o carregamento de configuração falhava se vários grupos de aplicações ou appKeys contivessem caracteres especiais.

  • Correção de um problema em que jobs MapReduce visuais não conseguiam usar recursos da Professional Edition.

Nenhuma

2023

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.9.6

Novo recurso

Adicionado suporte para modelos padrão e personalizados.

  • Modelos padrão: É possível modificar a imagem e a política de pull de imagem.

  • Modelos personalizados: Compatíveis com recursos nativos do Kubernetes. Para usar este recurso, atualize schedulerx2-plugin-kubernetes para a versão 1.0.5 ou posterior.

4 de julho de 2023

Nenhuma

Novo recurso

Agora é possível distribuir jobs map a partir de uma posição inicial aleatória. Para ativar isso, defina spring.schedulerx2.mapMasterDispatchRandom=true. O valor padrão é false.

Nenhuma

Novo recurso

Jobs Shell agora suportam parâmetros de sistema internos comuns.

  • schedule.timestamp (O horário agendado para o job)

  • data.timestamp (O timestamp dos dados para o job)

Nenhuma

1.8.13

Novo recurso

Ajuste no modelo de thread de execução.

  • Alteração do modelo para o modo de pool de threads não compartilhado.

  • Os seguintes parâmetros estão disponíveis para o modo de pool de threads compartilhado:

    • spring.schedulerx2.shareContainerPool=true: Ativa o pool de threads compartilhado.

    • spring.schedulerx2.sharePoolSize=32: O tamanho global do pool de threads compartilhado. Padrão: 64.

    • spring.schedulerx2.sharePoolQueueSize=20480: O tamanho da fila do pool de threads compartilhado. Padrão: Integer.MAX_VALUE.

8 de setembro de 2023

Nenhuma

Novo recurso

Adicionados os seguintes parâmetros:

  • spring.schedulerx2.broadcastMasterExecEnable=false: Determina se o nó mestre participa da execução de um job broadcast. Valor padrão: true.

  • spring.schedulerx2.broadcastDispatchRetryTimes=5: O número de tentativas de nova distribuição para um job broadcast.

Nenhuma

Otimização

Otimização do desempenho de jobs map durante implantações de aplicações em larga escala e scale-ins.

Nenhuma

Otimização

Otimização do relatório de heartbeat durante a inicialização da aplicação para evitar que uma inicialização lenta do contêiner cause longos tempos de processamento de job.

Nenhuma

Problema corrigido

  • Correção de um problema em que jobs eram rejeitados após execução prolongada no modo de pool de threads compartilhado.

  • Correção de um problema que ocasionalmente causava logs de ponteiro nulo durante o relatório de status do job.

  • Correção de um problema em versões posteriores a 1.7.x em que a contagem de threads para um job broadcast aumentava continuamente.

  • Correção de um vazamento de recursos de memória no modo de pool de threads compartilhado.

  • Correção de um problema em que objetos de proxy dinâmico não conseguiam executar a operação Reduce.

  • Correção de um problema em que confirmações para jobs de nível de segundo eram perdidas durante o processo de mesclagem.

  • Correção de um problema em que o Diamond falhava ao ler endpoints de ambiente.

  • Correção de um problema com timeouts de heartbeat excessivamente longos ao conectar-se a uma cloud pública.

  • Correção de um problema em que alertas de formato de log eram acionados para log4j.

  • Correção de um problema em que um job standalone travava se ocorresse uma exceção de distribuição.

  • Correção de uma incompatibilidade retroativa com o modo de configuração ClassName:BeanId.

  • Correção do limite máximo de tamanho de arquivo para logs standalone do Logback.

Nenhuma

2022

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.7.10

Novo recurso

  • Adicionado suporte para jobs agendados nativos do Spring.

  • Adicionado suporte para integração com Tracing Analysis.

30 de agosto de 2022

Otimização

Melhoria na capacidade de resposta dos agentes durante o desligamento.

Nenhuma

Problema corrigido

  • Correção de um erro de falta de memória causado por grandes volumes de logs do Simple Log Service provenientes de jobs de alta frequência.

  • Correção de um problema de latência que ocorria quando um grande número de jobs de nível de segundo era executado simultaneamente.

Nenhuma

1.6.1

Problema corrigido

Correção de alto uso de CPU causado por threads de detecção broadcast para jobs de nível de segundo.

3 de agosto de 2022

Nenhuma

1.6.0

Novo recurso

Adicionado suporte para agendamento de jobs Kubernetes.

24 de junho de 2022

Nenhuma

Otimização

  • Classes Processor tornadas compatíveis com configurações de proxy Spring AOP.

  • Melhoria no conteúdo das mensagens de log ERROR que aparecem ocasionalmente para o temporizador de monitoramento de workers disponíveis.

  • Adicionado suporte à coleta de logs para jobs second_delay.

Nenhuma

1.5.1.1

Novo recurso

Adicionado suporte para ativar ou desativar dinamicamente o Simple Log Service.

19 de abril de 2022

Nenhuma

Problema corrigido

  • Correção de um problema de incompatibilidade entre a versão 1.5.0.x e o Spring Boot 2.0.3.

  • Correção de um potencial erro de inicialização para o bean JobSyncService na versão 1.5.0.x.

1.5.0.2

Novo recurso

Adicionado suporte para definições declarativas de jobs no Spring Boot. É possível declarar namespaces, aplicações, jobs e alertas em arquivos de configuração para simplificar o gerenciamento de jobs. Esses arquivos podem ser modificados para iniciar uma aplicação em qualquer ambiente com um único clique.

1º de abril de 2022

Spring Cloud Alibaba scheduled jobs

Jobs MapReduce visualizados (anteriormente computação paralela) suportam visualização de listas, logs e reexecuções no nível da tarefa. Também é possível adicionar tags personalizadas às tarefas e pesquisar tarefas por tag.

Enterprise-grade distributed batch processing

1.4.2

Novo recurso

O SchedulerX 2.0 integra-se ao Simple Log Service. Sem modificar seu código, adicione uma configuração Log4j ou Logback para visualizar logs de negócios de cada execução de job (incluindo tarefas distribuídas) no console.

7 de março de 2022

How to integrate Simple Log Service

É possível visualizar a pilha de tempo de execução de um job diretamente no console para solucionar problemas de jobs travados. Para usar este recurso, atualize seu agente para a versão 1.4.0 ou posterior.

Nenhuma

Adicionado suporte para integração com executores desenvolvidos para ElasticJob.

1.3.4

Novo recurso

  • Adicionado suporte para jobs DataWorks.

  • Adicionado o plugin schedulerx2-plugin-xxljob para compatibilidade com a interface XxlJob.

6 de janeiro de 2022

2021

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.3.2

Otimização

Atualização da dependência padrão Log4j 2 para a versão 2.15.0.

15 de dezembro de 2021

Nenhuma

1.3.0.3

Novo recurso

Aprimoramento de jobs standalone de nível de segundo. Um loop standalone de nível de segundo agora pode ser distribuído e alternado entre diferentes instâncias. Para uma aplicação Spring Boot, defina o seguinte parâmetro: spring.schedulerx2.enableSecondDelayStandaloneDispatch=true (padrão: false).

26 de novembro de 2021

Nenhuma

Otimização

Melhoria na capacidade de resposta do agente durante o desligamento.

Nenhuma

Problema corrigido

  • Correção de um problema que fazia com que o heartbeat de um worker fosse relatado apenas a um único service agendado quando seu agente estava conectado a vários grupos de instâncias.

  • Correção de potenciais interrupções de thread e exceções de ponteiro nulo em jobs second-delay.

  • Correção de um problema de compatibilidade que causava travamento e timeout de jobs quando o agente SchedulerX era integrado ao Spring Cloud.

  • Impedimento de interrupção de jobs broadcast durante execução concorrente.

  • Correção da lista de workers que não era atualizada periodicamente durante a execução de jobs second-delay.

  • Correção de um problema em que a thread de varredura de um job broadcast second-delay falhava ao terminar após receber uma instrução de parada.

  • Correção de um problema em que jobs broadcast second-delay podiam ocasionalmente travar durante uma implantação em lote em larga escala de workers.

Nenhuma

1.2.9.1

Problema corrigido

Correção de um problema de compatibilidade que causava travamento e timeout de jobs quando um worker era integrado ao Spring Cloud.

30 de agosto de 2021

Nenhuma

1.2.9

Novo recurso

Aprimoramento de jobs standalone de nível de segundo. Um loop standalone de nível de segundo agora pode ser distribuído e alternado entre diferentes instâncias. Defina o parâmetro spring.schedulerx2.enableSecondDelayStandaloneDispatch=true (padrão: false).

27 de agosto de 2021

Nenhuma

Problema corrigido

Correção de problemas com jobs broadcast sendo interrompidos durante execução concorrente e com a lista de workers não sendo atualizada.

Nenhuma

1.2.8.3

Problema corrigido

Correção de um problema em que a thread de varredura de um job broadcast second-delay falhava ao terminar após receber uma instrução de parada.

13 de agosto de 2021

Nenhuma

1.2.8.2

Problema corrigido

Correção de um problema em que jobs broadcast second-delay podiam ocasionalmente travar durante uma implantação em lote em larga escala de workers.

6 de agosto de 2021

Nenhuma

1.2.8

Novo recurso

  • Aprimoramento de jobs broadcast: Agora é possível usar postProcess para obter o status de todos os workers chamando JobContext.getTaskStatuses() e seus resultados de execução chamando JobContext.getTaskResults().

  • Adicionado suporte a sharding para jobs broadcast: Agora é possível obter shardingNum e shardingId de JobContext para processar dados distribuídos com base no índice do worker.

  • Aprimoramento do modo sharding: A contagem total de shards agora está disponível em shardingNum no JobContext.

23 de junho de 2021

Nenhuma

1.2.7

Novo recurso

Adicionado um controle para desativar o recurso de failover.

28 de abril de 2021

Nenhuma

Problema corrigido

  • Correção de um vazamento de socket causado por falha na verificação de integridade do heartbeat.

  • Correção de um problema em que o worker mestre do MapReduce acionava failovers desnecessários ao lidar com um grande número de subtarefas.

Nenhuma

1.2.5.2

Novo recurso

Jobs second-delay agora suportam intervalos no nível de milissegundo.

8 de abril de 2021

Nenhuma

Otimização

  • Otimização do modelo MapReduce: a tarefa raiz agora é executada no worker mestre, simplificando a solução de problemas.

  • Remoção da dependência rígida do Log4j 2. Agora é possível excluir as dependências Log4j e Log4j 2 ao usar Logback.

Nenhuma

1.2.4.3

Novo recurso

  • Adicionado relatório de progresso para jobs broadcast durante a execução.

  • Adicionado um controle para desativar logs de heartbeat.

21 de janeiro de 2021

Nenhuma

Problema corrigido

  • Ajuste do intervalo de heartbeat para 10 segundos.

  • Correção de um problema crítico que causava travamento de jobs broadcast.

Nenhuma

2020

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.2.3.1

Otimização

Otimização do agente para evitar falhas de agendamento devido a problemas de conexão persistente sob alta carga.

16 de dezembro de 2020

Nenhuma

1.2.2.2

Novo recurso

  • É possível coletar o uso real de CPU de dentro de um contêiner. Isso requer configuração adicional. Por exemplo, para um starter: spring.schedulerx2.enableCgroupMetrics=true,spring.schedulerx2.cgroupPathPrefix=/sys/fs/cgroup/cpu/ (O parâmetro cgroupPathPrefix é opcional. Se o caminho "/sys/fs/cgroup/cpu/" existir no contêiner, não será necessário configurar este parâmetro. Caso contrário, altere o valor para o caminho cgroup real).

  • Suporte a tags adicionado. É possível adicionar tags personalizadas quando um agente inicia. Por exemplo, com um starter: spring.schedulerx2.labels=xxx. No gerenciamento de tarefas, é possível especificar máquinas para suas tarefas, como executá-las em instâncias com uma tag específica. Isso é útil para cenários como canary releases e gerenciamento baseado em células.

10 de dezembro de 2020

Nenhuma

Otimização

  • Isolamento das threads principais de heartbeat e Akka do agente. Isso impede que altas cargas de negócios afetem as sondas de heartbeat.

  • Remoção do h2 do shade para evitar possíveis falhas no carregamento do driver MySQL.

Nenhuma

1.2.1.2

Novo recurso

  • Introdução de um ContainerPool compartilhado. Todos os jobs em um agente agora podem compartilhar um único pool de threads, o que melhora significativamente o desempenho e a estabilidade do agente ao agendar um grande número de jobs concorrentes.

  • Aplicação de shade na biblioteca Scala para resolver possíveis conflitos de dependência.

  • Agora suporta autenticação AppKey na cloud pública.

  • Aprimoramento do modelo MapReduce. Agora é possível configurar se o método Reduce deve ser executado somente após todas as tarefas terem sucesso.

  • O agente SchedulerX suporta o uso de -Dschedulerx.appKey para definir o appKey.

20 de outubro de 2020

Nenhuma

Otimização

Otimização do pool de threads Netty do agente.

Nenhuma

Problema corrigido

  • Correção de um problema em que jobs broadcast podiam travar.

  • Correção de um problema em que o AccessKey ID ou AccessKey secret do Simple Log Service (SLS) poderia ser vazado.

Nenhuma

1.2.0.2

Novo recurso

  • Agora suporta mais de 100.000 jobs por aplicação na cloud pública.

  • Adicionado um interruptor de log para o agente, ativado por padrão.

  • Agora é possível definir o status do job ao criar um job com a OpenAPI.

  • Remoção das dependências diamond-client, logger.API e Log4j.

19 de agosto de 2020

Nenhuma

Problema corrigido

  • Correção de um problema em que o agente se desconectava do servidor durante simulações de interrupção de rede.

  • Correção de um problema em que aplicações no Enterprise Distributed Application Service (EDAS) não conseguiam ler o AccessKey secret.

Nenhuma

1.1.4.RELEASE

Novo recurso

  • Agora suporta namespaces autogerenciados.

  • Agora suporta inicialização de múltiplas instâncias SchedulerxWorker.

  • Aprimoramento do modelo MapReduce:

  • O método Reduce pode ser executado mesmo se algumas tarefas falharem.

  • É possível usar JobContext.getTaskStatuses para determinar o status de cada Task. Na estrutura Map<Long, TaskStatus>, a chave é o TaskId e o valor é o status da Task.

15 de maio de 2020

Nenhuma

Problema corrigido

  • ProcessResult causará um ponteiro nulo se result for nulo.

  • Um travamento em thread-dispatcher-delivery causa o bloqueio de tarefas.

Nenhuma

1.1.2.RELEASE

Novo recurso

shade protobuf and netty from AccessKey IDka, resolvendo mais de 90% dos conflitos de pacotes JAR.

10 de fevereiro de 2020

Nenhuma

Otimização

Limitação de AppKeys a um único grupo.

Nenhuma

2019

Versão

Tipo de alteração

Descrição

Data de lançamento

Referências

1.1.0

Novo recurso

  • Adicionado suporte para um modelo de sharding multilíngue, semelhante ao elastic-job.

  • A OpenAPI para criação de grupos agora pode retornar um AppKey.

  • Agora é possível reexecutar instâncias de job que estão em estado de sucesso. Em um fluxo de trabalho, a reexecução de uma instância de job também reexecuta seus jobs downstream.

17 de dezembro de 2019

Nenhuma

Otimização

  • Otimização do desempenho do lado do servidor alterando a comunicação com o cliente de síncrona para assíncrona e otimizando a configuração padrão do dispatcher Akka.

  • Aumento do desempenho de heartbeat em 3x ao usar o agente SchedulerX v1.1.0.

  • Redesign da página Job Management no console para exibir mais informações.

Nenhuma

Problema corrigido

  • Correção de um problema em que tarefas globais poderiam não ter efeito no modelo de pull distribuído.

  • Correção de um problema em que o agente SchedulerX ainda podia falhar ao iniciar em um ambiente de célula isolada se nenhum domínio estivesse configurado.

Nenhuma

1.0.9

Novo recurso

  • Adicionada a configuração BlockAppStart, que especifica se deve bloquear a inicialização da aplicação caso o SchedulerX falhe ao iniciar. O valor padrão é true.

  • Adicionada uma operação de API para consultar o status de um fluxo de trabalho. O objeto de solicitação é GetWorkflowInstanceRequest.

  • Adicionado o campo jobName ao JobContext. Os usuários agora podem recuperar o nome do job em tempo de execução.

28 de novembro de 2019

Nenhuma

Problema corrigido

  • Correção de um problema em que a desserialização Hessian retornava 0 para BigDecimal.

  • Correção de um erro ocorrido durante a desserialização Hessian de LocalDateTime.

  • Correção de um problema em que jobs fixos distribuíam tarefas para máquinas não especificadas se o job excedesse um determinado tempo de execução.

  • A chamada do cliente para springContext.getBean lança uma exceção AnnotationConfigApplicationContext has not been refreshed yet.

  • Correção de um problema em que uma configuração inválida de classe de implementação de job podia parar o ServletWebServer do Spring Boot, fazendo com que o service web fosse encerrado enquanto o processo de negócios continuava em execução.

  • Correção de um problema em que um job travava se a variável de inicialização do sistema user.dir='/' estivesse definida.

  • O cliente lança uma exceção AnnotationConfigApplicationContext has been closed already ao chamar springContext.getBean.

  • Correção de um problema raro em que o agente SchedulerX gerava IDs de worker duplicados, causando o acionamento de jobs em máquinas fora da aplicação pretendida.

  • Aplicações Spring não podem personalizar o class loader.

  • Correção de um problema em que o contador para jobs de execução broadcast exibia um valor incorreto para jobs second-delay.

  • Correção de um problema em que jobContext.getScheduleTime não era atualizado em cada ciclo para um job second-delay.

Nenhuma

1.0.8

Novo recurso

  • Importante: Refatoração da interface JobProcessor.postProcess para retornar um valor ProcessResult. Você deve atualizar seu código se usar a interface postProcess.

  • Aprimoramento da execução broadcast. BroadcastJobProcessor agora suporta preProcess e postProcess. O método preProcess é executado uma vez antes que o método process seja executado em todas as máquinas, e o método postProcess é executado uma vez após o método process ser concluído em todas as máquinas.

  • É possível usar JobContext.getTaskAttempt para recuperar a contagem de novas tentativas da subtarefa atual.

  • O agente SchedulerX agora suporta portas de escuta personalizadas por meio de métodos como SchedulerxWorker.setPort.

  • Jobs Java agora podem implementar JobProcessor e não precisam mais estender JavaProcessor.

6 de agosto de 2019

Nenhuma

Problema corrigido

  • Correção de um bug em que as subtarefas de TaskId=1 não suportavam nova tentativa automática.

  • Correção de um problema em que a causa da falha não era exibida quando a tarefa raiz de uma tarefa distribuída falhava.

  • Correção de um problema que impedia a nova tentativa de tarefas a partir da lista de tarefas de um job de computação paralela.

Nenhuma

1.0.6-compatible

Otimização

Lançamento de uma versão compatível com a interface schedulerx1.0(DTS). Esta versão suporta apenas uma dependência do pacote schedulerx-worker, não de ambos schedulerx-client e schedulerx-worker. Todos os jobs do Data Transmission Service (DTS) devem ser migrados para o SchedulerX 2.0.

2 de julho de 2019

Nenhuma

1.0.6

Novo recurso

  • Aplicação de shade em vários pacotes, incluindo aliyun-log, commons-validator, gson, fastjson, guava, commons-collections.

  • Se você retornar ProcessResult(false, errorMsg), o errorMsg também será exibido no log do frontend.

Otimização

  • Melhoria no desempenho de at-least-once-delivery.

  • Otimização da entrega de mensagens em cenários de alta carga para evitar que mensagens repetidas causem travamento de jobs second-delay ou interrompam threads da aplicação.

2 de julho de 2019

Nota

Para esta versão, o número da versão exibido no console é 1.0.4, que difere do número da versão Maven.

Problema corrigido

  • Correção de um problema em que jobs de execução broadcast travavam.

  • Correção de um problema em que jobs second-delay travavam.

  • at-least-once-delivery pode causar uma nova tentativa infinita de uma subtarefa.

  • Correção de um problema em que o agente SchedulerX falhava ao iniciar se logcollector falhasse ao inicializar.

  • Correção de um problema que impedia o reagendamento de um fluxo de trabalho após suas instâncias de job serem limpas do banco de dados.

  • Correção de um problema que impedia o término de aplicações baseadas em Spring com o comando kill.

1.0.3

Novo recurso

  • No modelo MapReduce, o método Reduce agora pode processar os resultados de todas as tarefas.

  • O modelo distribuído agora suporta um modelo de pull. Este modelo resolve gargalos de desempenho de máquina única e suporta dimensionamento dinâmico para puxar tarefas.

  • O modelo de pull agora suporta um limite global de concorrência de tarefas para limitação de taxa.

  • Adicionado o campo wfInstanceId ao JobContext.

  • O agente SchedulerX agora lança uma exceção e bloqueia a inicialização da JVM se o agente falhar ao iniciar. Isso ajuda a identificar problemas mais cedo.

  • O agente SchedulerX agora imprime as versões e caminhos dos JARs dependentes do Maven na inicialização para ajudar a solucionar conflitos de pacotes.

  • Adicionada uma dimensão de fila à visualização de detalhes da tarefa no modelo distribuído. Agora é possível visualizar a fila de tarefas em cache em cada máquina.

6 de junho de 2019

Nenhuma

Problema corrigido

  • Correção de um problema em que workers colocados em quarentena incorretamente não conseguiam se recuperar automaticamente sem reiniciar o agente SchedulerX.

  • Correção de um problema em que a visualização de detalhes da tarefa no modelo distribuído não exibia com precisão o número de tarefas em execução em cada máquina.

  • Correção de um problema em que o servidor não limpava recursos em nós escravos quando o nó mestre falhava, causando vazamentos de memória.

Nenhuma

1.0.0

Novo recurso

  • Suporte a expressões crontab e fixed_rate para agendamento periódico.

  • Adicionado suporte para agendamento de fluxo de trabalho para orquestração de jobs.

  • Suporte à expressão second_delay para agendamento no nível de segundo.

  • Adicionado suporte para tipos de job Java, Shell, Python e Go.

  • Adicionado suporte para execução standalone, execução broadcast, computação paralela, grade de memória e computação em grade.

  • Adicionado suporte para modelos de programação distribuída Map e MapReduce.

  • Adicionado suporte para novas tentativas automáticas em caso de falha nos níveis de instância de job e tarefa. Este recurso está desativado por padrão.

  • Adicionado suporte para tempo de dados e backfill.

30 de abril de 2019

Nenhuma