JSR 352 - Processamento Batch na Plataforma JavaDanival T. Calegari
Danival Taffarel Calegari● Mestre em Ciência da Computação pela Unicamp● Atua a mais de 10 anos em desenvolvimento de apli...
Agenda● Motivação da JSR 352● Conceitos● Características da especificação● Jobs e Steps● Chunck● Batchlet● Referências
Motivação da JSR● Processamento em batch é muito comum em aplicações.● Várias soluções “personalizadas”.● Produtos começar...
Conceitos● Processamento em batch é definido por uma execuçãoorientada a massa de dados não interativa que executa embackg...
Conceitoshttp://static.springsource.org/spring-batch/reference/html/JSR 352
Conceitoshttp://static.springsource.org/spring-batch/reference/html/
Conceitoshttp://static.springsource.org/spring-batch/reference/html/
Conceitoshttp://static.springsource.org/spring-batch/reference/html/
Características da Especificação● Java SE e Java EE● Configuração orientada a XML● Interfaces e classes abstratas para est...
Jobs e Steps● A configuração dos Jobs é feita em arquivos XML● META-INF/batch-jobs● WEB-INF/classes/META-INF/batch-jobs● J...
Chunck● Processamento de um bloco de dados● Periodicamente é feito um checkpoint dos dados processados● Cada chunck é proc...
Chunck● Classes e interfaces envolvidas● ItemReader● AbstractItemReader● ItemWriter● AbstractItemWriter● ItemProcessor● Ou...
Batchlet● Processamento orientado a tarefa● É executado apenas uma vez pela tarefa● Permite maior liberdade na forma como ...
Referências● https://java.net/projects/jbatch● http://static.springsource.org/spring-batch/reference/html● http://www.info...
Obrigado!@danivaltcdanivaltc@gmail.com
Próximos SlideShares
Carregando em…5
×

JSR 352 - Processamento Batch na Plataforma Java - JustJava 2013

1.434 visualizações

Publicada em

Apresentação feita no JustJava 2013 sobre a especificação resultante da JSR 352, que padroniza mecanismos para o desenvolvimento de processos batch dentro da plataforma Java. Esta especificação faz parte do Java EE 7 e foi acompanhada pelo palestrante dentro do programa de Adopt a JSR.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.434
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
22
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

JSR 352 - Processamento Batch na Plataforma Java - JustJava 2013

  1. 1. JSR 352 - Processamento Batch na Plataforma JavaDanival T. Calegari
  2. 2. Danival Taffarel Calegari● Mestre em Ciência da Computação pela Unicamp● Atua a mais de 10 anos em desenvolvimento de aplicaçõesJava EE● Vários projetos com batch (billing para telecom e elétrica, aplicaçõespara mercado financeiro).● Líder técnico na MATERA Systems● Instrutor da Globalcode a mais de 8 anos● Palestras em vários eventos: JavaOne, JustJava, TDC● Certificações: SCJP, SCWCD, SCBCD
  3. 3. Agenda● Motivação da JSR 352● Conceitos● Características da especificação● Jobs e Steps● Chunck● Batchlet● Referências
  4. 4. Motivação da JSR● Processamento em batch é muito comum em aplicações.● Várias soluções “personalizadas”.● Produtos começaram a surgir● Spring Batch● WebSphere Compute Grid● Objetivo● Permitir a implementação de aplicações em batch usando um modelo deprogramação padronizado● Participantes
  5. 5. Conceitos● Processamento em batch é definido por uma execuçãoorientada a massa de dados não interativa que executa embackground.● Requisitos comuns● Logging● Estabelecimento de checkpoints● Paralelização● Controle de operações
  6. 6. Conceitoshttp://static.springsource.org/spring-batch/reference/html/JSR 352
  7. 7. Conceitoshttp://static.springsource.org/spring-batch/reference/html/
  8. 8. Conceitoshttp://static.springsource.org/spring-batch/reference/html/
  9. 9. Conceitoshttp://static.springsource.org/spring-batch/reference/html/
  10. 10. Características da Especificação● Java SE e Java EE● Configuração orientada a XML● Interfaces e classes abstratas para estabelecimento decontratos● Possui suporte próprio para injeção de dependências● Parâmetros, contextos● O mecanismo fica a cargo da implementação da especificação● Comunicação entre os elementos através de contextos● JobContext● StepContext● Configurações do mecanismo por XML● META-INF/batch.xml
  11. 11. Jobs e Steps● A configuração dos Jobs é feita em arquivos XML● META-INF/batch-jobs● WEB-INF/classes/META-INF/batch-jobs● JSL – Job Specification Language<job id="myJob" version="1.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"><step id="myStep" ><!-- chunck / batchlet --></step></job>
  12. 12. Chunck● Processamento de um bloco de dados● Periodicamente é feito um checkpoint dos dados processados● Cada chunck é processado em uma transação separada● É feita uma única chamada ao ItemWriter por chunck● Permite reinínio a partir do último checkpoint em caso de falhas.<job id="myJob" version="1.0"xmlns="http://xmlns.jcp.org/xml/ns/javaee"><step id="myStep" ><chunk item-count="3"><reader ref="myItemReader"></reader><processor ref="myItemProcessor"></processor><writer ref="myItemWriter"></writer></chunk></step></job>
  13. 13. Chunck● Classes e interfaces envolvidas● ItemReader● AbstractItemReader● ItemWriter● AbstractItemWriter● ItemProcessor● Outras configurações● Mecanismo de checkpoint● Particionamento de processamento● Tratamento de exceções
  14. 14. Batchlet● Processamento orientado a tarefa● É executado apenas uma vez pela tarefa● Permite maior liberdade na forma como vai ser implementado● javax.batch.api.Batchlet<job id="myJob" version="1.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"><step id="myStep" ><batchlet ref="myBatchlet"/></step></job>
  15. 15. Referências● https://java.net/projects/jbatch● http://static.springsource.org/spring-batch/reference/html● http://www.infoq.com/presentations/JSR-352-Java-Batch
  16. 16. Obrigado!@danivaltcdanivaltc@gmail.com

×