Histórico da Página
...
Em um ambiente com suporte a 160 jobs em paralelo, configurado para geração de lançamentos com 30 jobs, foram enviadas requisições em paralelo de níveis de ensino e filiais diferentes dentro da mesma coligada. Todas requisições foram programadas para executar as 1016:4030, abaixo segue uma tabela com os dados das requisições e tempo do processo.
No total foram enviados 185 mil parcelas para geração de lançamento não contábil e sem baixa automática com o total de 150 frações, o tempo total a soma dos tempos de execução foi de 2h18min1h16min, e toda execução demorou 36min conforme tabela abaixo:
| Geração de lançamentos com concorrência | |||||||
| Quantidade Lançamentos | Número de Jobs | Código Coligada | Classe do Processo | Status | Iniciado Em | Finalizado Em | Tempo de execução |
| 5.000 | 30 | 5 | EduGeraLancSliceableData | OK | 2820/0506/2025 1016:4030:030128 | 20/0506/2025 1116:0533:0141 | 0:2403 |
| 10.200 | 30 | 5 | EduGeraLancSliceableData | OK | 2820/0506/2025 1016:4030:0228 | 20/0506/2025 1116:3036:5538 | 0:5006 |
| 20.000 | 30 | 5 | EduGeraLancSliceableData | OK | 2820/0506/2025 1016:4030:030128 | 20/0506/2025 1116:3940:2237 | 0:5910 |
| 50.000 | 30 | 5 | EduGeraLancSliceableData | OK | 2820/0506/2025 1016:4030:010228 | 20/0506/2025 1216:2048:1146 | 10:4018 |
| 100.000 | 30 | 5 | EduGeraLancSliceableData | OK | 2820/0506/2025 1016:4030:0128 | 20/0506/2025 1217:5806:5946 | 20:1836 |
O mesmo processamento utilizando o fracionamento de jobs inteligente teve grande diferença de tempo.
O fracionamento inteligente fez o cálculo da melhor quantidade de frações por quantidade de lançamentos, com a criação de menos frações na fila de execução.fez com que o processo fosse executado em menor tempo.
No exemplo não foram utilizados jobs acima do limite e ainda sim houve na soma dos tempos e também no tempo total do processamento.
A soma do tempo para os Os mesmos 185 mil lançamentos em paralelo foram executados em 25min utilizando fracionamento inteligente teve um total de 1h06min promovendo um ganho de 10min, já o tempo de execução foi de 21min usando 132 frações, conforme tabela abaixo:
| Geração de lançamentos com concorrência | |||||||
| Quantidade Lançamentos | Número de Jobs | Código Coligada | Classe do Processo | Status | Iniciado Em | Finalizado Em | Tempo de execução |
| 5.094 | 8 | 5 | EduGeraLancSliceableData | OK | 0924/06/2025 1017:3040:010409 | 24/06/2025 1017:3948:2307 | 0:0908 |
| 10.194 | 13 | 5 | EduGeraLancSliceableData | OK | 0924/06/2025 1017:3040:010309 | 24/06/2025 1017:4150:4025 | 0:1110 |
| 20.394 | 21 | 5 | EduGeraLancSliceableData | OK | 0924/06/2025 1017:3040:0209 | 24/06/2025 1017:4452:1206 | 0:1412 |
| 50.010 | 40 | 5 | EduGeraLancSliceableData | OK | 0924/06/2025 1017:3040:020409 | 24/06/2025 1017:4655:5707 | 0:1615 |
| 101.994 | 50 | 5 | EduGeraLancSliceableData | OK | 0924/06/2025 1017:3040:010309 | 24/06/2025 1018:5501:4321 | 0:2521 |
Concluímos que o fracionamento de jobs inteligente calcula a melhor proporção de "quantidade de lançamentos/frações" gerando menos itens na fila, o que diminui o tempo de execução do processo total para cada solicitação.
Como visto nos exemplo, os processos foram executados em paralelo, no cenário 1 as execuções foram agendadas no dia 2820/0506/2025 as 1016:40 30 e no cenário 2 os agendamentos foram no dia 0924/06/2025 as 1017:3040.
No cenário 1 foram enviadas no total 150 frações sendo que algumas tiveram que ficar na fila esperando as frações com maior quantidade , demoraram mais tempo na fila sem necessidade.
Ao ajustar o número de frações de forma proporcional a quantidade de lançamentos, nos últimos testes, com valores calculados foi possível executar os 185 mil lançamentos em 25 21 minutos.
Configurando fracionamento de jobs inteligente:
...