ADVENTURE_5
Para realizar a quinta parte do projeto deve começar por resolver na totalidade o exercício prático da aula-jmeter.De seguida obtenha a nova versão do código disponibilizada em https://github.com/tecnico-softeng/reference.git. Instale essa versão no ramo master e crie uma cópia para o ramo develop onde o grupo irá realizar as suas atividades de desenvolvimento. Para isso deve usar os comandos git adequados.
A quinta parte do projeto corresponde a efetuar sobre o resultado da quarta parte (quarto sprint), a que foi adicionada a ligação entre a aplicação broker e as restantes aplicações, testes de carga, usando a ferramenta JMeter. Mas pode ser necessário fazer algumas alterações ao código, em particular para apagar as instâncias da base de dados.
Devem ser implementados 3 testes de carga, em que após a inicialização de dados, efetuada sequencialmente, se executam os testes de carga
Cada grupo deve-se dividir em sub-grupos de 3 alunos, em que cada um deles, trabalha num teste de carga. É obrigatório indicar no README.md quais os elementos que trabalham em cada um dos testes de carga, indicando o número de aluno, o nome e o username no GitHub.
- 100Reads - Neste teste simula-se o seguinte cenário a ser executado por diversos utilizadores em simultâneo
- Read Brokers
- Read Adventures
- Read Banks
- Read Clients
- Read Accounts
- Read Hotels
- Read Rooms
- Read Providers
- Read Activities
- Read Offers
- 30Writes - Neste teste simula-se o seguinte cenário a ser executado por diversos utilizadores em simultâneo
- Process Adventure
- Read Adventures
- Read Banks
- Read Clients
- Read Accounts
- Process Adventure
- Read Rooms
- Read Activities
- Read Offers
- Process Adventure
- 100Writes - Neste teste simula-se o seguinte cenário a ser executado por diversos utilizadores em simultâneo
- Process Adventure
- Process Adventure
- Process Adventure
- Process Adventure
- Process Adventure
No fim de cada teste todas as instâncias devem ser apagadas da base dados.
Os dados a criar devem ser suficientes para que o processamento de 100 aventuras seja confirmado. Note que os dados a criar têm impacto no sucesso e/ou desempenho de alguns cenários. Por exemplo, se todas as aventuras usarem o mesmo IBAN é maior a possibilidade de conflitos de escrita e o processamento da aventura ter uma maior latência, ou vir mesmo a ser cancelado.
Estima-se que no cenário 100Writes se simulem 100 utilizadores em simultâneo e nos restantes 2000 utilizadores.
Entregue um relatório de uma página de texto em que analise os resultados e o impacto que a política otimista implementada pela FénixFramework tem na invocação de serviços remotos. O relatório deve ser colocado no diretório de topo do projeto, num ficheiro de nome report.md.
Para a entrega deverão fazer:
$ git checkout develop
$ git checkout -b fifth-deliver
$ git tag ADVENTURE_5
$ git push origin --tags fifth-fifth-deliver
A tag deve ter uma data anterior à data limite de entrega, dia 21 de Maio pelas 20:00.