Java RPC-07: Extras e desempenho

06 de setembro de 2009 por Enrique Deixe uma resposta »

Este é o último artigo desta série, vou explorar alguns RPC extra é o servidor que vai nos servir para implementar um servidor de aplicativos, mas sem perder generalidade. Teremos também a realizar um teste de desempenho, vendo o througput (solicitações por segundo) que tem o servidor.

Extras

Serviços no lado do servidor recebe parâmetros de inicialização. Isto irá permitir-nos passar os dados para configurar o serviço. Estes parâmetros são acessados ​​através getParameters método () da classe Service, que retorna um mapa com a configuração.

Serviço de validação

Antes de adicionar um serviço para o servidor, execute as seguintes verificações:

  • Que a execução do serviço deve ter um construtor sem parâmetros

  • Que a implementação do serviço deve implementar a interface de serviço

  • Não sobrecarregue métodos no serviço

  • Que o tipo de retorno de parâmetros do método são serializáveis

Estas verificações ajudam a evitar erros comuns.

Autorizado a firmar

Antes que você executar um método de serviço é chamado um interceptor: onPreExecution. Se bem sucedido, então passado para invocar o serviço, se não NotExecutedException excepcionalmente fora. Isso vai ser usado para implementar, por exemplo, mecanismos de segurança e auditoria (log).

Execução

Com o teste de desempenho, verificar para ver se o projeto é escalável como queríamos. O teste foi realizado em um notebook que tem um modelo de Intel T9500 (2.6GHz C2D, cache 6MB Penryn core) com 2GB de RAM em 32-bit Ubuntu 9.04 e java6. Os resultados foram:

Caso Processos do cliente Threads cliente Encomendas por discussão Total de pedidos Tempo (s) Pedidos / segundo

1

5

30

2500

375000

207

1.811,59

2

10

30

2500

750000

229

3.275,11

Embora não seja um teste de esforço rigoroso, dá uma boa aproximação do desempenho e escalabilidade do serviço: dobrando o número de pedidos, mas o tempo passa de 10,6%. Além disso, há um valor que pode ser ajustado na criação do servidor que é o tamanho do conjunto da Ordem dos Trabalhadores camada que as encomendas enviadas para a camada de serviço. O tamanho padrão é 10, mas se você está enfrentando uma configuração de CPU multi pode aumentar este valor para obter um melhor desempenho. Para os testes de desempenho usamos um conjunto de 10 trabalhadores.

Um servidor de aplicações baseado em uma versão mais antiga do mecanismo de RPC está em vigor há vários anos um dos maiores bancos no Uruguai.

No próximo artigo vamos começar com a introdução para o servidor de aplicação e quais são os componentes principais.

Fique ligado!

Blogger Post Digg Reddit Google Reader Compartilhar
Anúncio

Deixe um comentário

Proteção contra spam por WP Captcha-Livre