Abaixo alguns parâmetros que gosto de utilizar para um melhor desempenho no JDeveloper 12c.
Arquivo: <$ORACLE_HOME>/jdeveloper/ide/bin/ide.conf
AddVMOption -Xms2560M
AddVMOption -Xmx2560M
Arquivo: <$ORACLE_HOME>/jdeveloper/ide/jdev/jdev.boot
VFS_ENABLE = true
compiler.vmargs = -Xmx1024m
Arquivo: <$ORACLE_HOME>/jdeveloper/ide/jdev/jdev.conf
AddVMOption -DMainWindow.MemoryMonitorOn=true
AddVMOption -Dsun.java2d.ddoffscreen=false
AddVMOption -XX:+UseConcMarkSweepGC
AddVMOption -XX:+UseParNewGC
AddVMOption -XX:+CMSIncrementalMode
AddVMOption -XX:CompileThreshold=10000
AddVMOption -XX:+AggressiveOpts
AddVMOption -XX:+UseCompressedOops
Parâmetros para Jdeveloper 12.2.1.2 e JDK 8
segunda-feira, 28 de janeiro de 2019
quinta-feira, 24 de janeiro de 2019
Utilizando Split-Join no OSB 12c
Neste post, irei demonstrar a criação de um Split-Join e o ganho ao executar chamadas em paralelo.
O Split-Join é um componente que ajuda a melhorar a performance de um serviço processando em paralelo varias atividades em uma unica chamada.
Passos:
Primeiro criei 3 composite com 1 BPEL Process em cada, e configurei a atividade do tipo "wait" com 5s em cada.
No OSB Application, crie 3 business com os respectivos WSDL dos BPEL Process criado no passo anterior.
Crie um WSDL para o Slit-Join, o response será um elemento com todos os response dos 3 BPEL Process.
Com o WSDL gerado, click com o botão direito no diretório, vá em New -> Split-Join. Este mesmo processo pode ser feito arrastando o componente Split-Join para "External Service".
Em "Service Name" preencha com "TestSplitJoin" e click em "Next"
Escolha o WSDL gerado no passo anterior e click em "Finish"
Arraste o "Flow Control" do tipo "Parallel"
Arraste o "Communication" do tipo "Invoke Service" e aponte para um Business Service criado anteriormente.
Para a variável de request crie como "local".
Para a variável de response crie como "global", pois iremos utilizar ao final do fluxo para compor o response.
Arraste o "Assign Operations" do tipo "Assign" antes do "Invoke Service" e preencha com o payload para a chamada do BPEL Process.
Faça o mesmo procedimento para os outros dois Business Service.
Crie uma XQuery que receba como parâmetro os 3 responses e preenche o response do Split-Join.
Arraste o "Assign Operations" do tipo "Assign" antes de "Reply" e em "value", selecione "XQuery resources"
Selecione a xquery que foi gerado no passo anterior "splitjoin.xqy" e selecione as variáveis dos respectivos responses.
Crie um pipeline com as mesma chamadas, sequenciais para fazer uma comparação com os tempos de respostas.
Resultado dos testes:
Assim como os pipeline, podemos reutilizar o Split-Join em outros pipeline e não estar exposto como serviço.
Os fontes podem ser baixados aqui.
O Split-Join é um componente que ajuda a melhorar a performance de um serviço processando em paralelo varias atividades em uma unica chamada.
Passos:
Primeiro criei 3 composite com 1 BPEL Process em cada, e configurei a atividade do tipo "wait" com 5s em cada.
No OSB Application, crie 3 business com os respectivos WSDL dos BPEL Process criado no passo anterior.
Crie um WSDL para o Slit-Join, o response será um elemento com todos os response dos 3 BPEL Process.
Com o WSDL gerado, click com o botão direito no diretório, vá em New -> Split-Join. Este mesmo processo pode ser feito arrastando o componente Split-Join para "External Service".
Em "Service Name" preencha com "TestSplitJoin" e click em "Next"
Escolha o WSDL gerado no passo anterior e click em "Finish"
Arraste o "Flow Control" do tipo "Parallel"
Arraste o "Communication" do tipo "Invoke Service" e aponte para um Business Service criado anteriormente.
Para a variável de request crie como "local".
Para a variável de response crie como "global", pois iremos utilizar ao final do fluxo para compor o response.
Arraste o "Assign Operations" do tipo "Assign" antes do "Invoke Service" e preencha com o payload para a chamada do BPEL Process.
Faça o mesmo procedimento para os outros dois Business Service.
Crie uma XQuery que receba como parâmetro os 3 responses e preenche o response do Split-Join.
Arraste o "Assign Operations" do tipo "Assign" antes de "Reply" e em "value", selecione "XQuery resources"
Selecione a xquery que foi gerado no passo anterior "splitjoin.xqy" e selecione as variáveis dos respectivos responses.
Crie um pipeline com as mesma chamadas, sequenciais para fazer uma comparação com os tempos de respostas.
Resultado dos testes:
Assim como os pipeline, podemos reutilizar o Split-Join em outros pipeline e não estar exposto como serviço.
Os fontes podem ser baixados aqui.
Assinar:
Postagens (Atom)