18.03.2015 Views

XI Workshop de Testes e Tolerância a Falhas (WTF) - SBRC 2010

XI Workshop de Testes e Tolerância a Falhas (WTF) - SBRC 2010

XI Workshop de Testes e Tolerância a Falhas (WTF) - SBRC 2010

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>XI</strong> <strong>Workshop</strong> <strong>de</strong> <strong>Testes</strong> e Tolerância a <strong>Falhas</strong> 153<br />

3. Trabalhos relacionados<br />

O requisito <strong>de</strong> disponibilida<strong>de</strong>, um dos principais componentes da confiabilida<strong>de</strong> <strong>de</strong> um<br />

sistema, é particularmente difícil <strong>de</strong> atingir no ambiente heterogêneo em que serviços web<br />

habitualmente operam. A tarefa <strong>de</strong> construir mo<strong>de</strong>los <strong>de</strong> falha, por exemplo, é dificultada<br />

pela natureza da publicação dos serviços, já que a <strong>de</strong>scrição <strong>de</strong> um serviço, obrigatoriamente,<br />

especifica apenas informações básicas necessárias à sua invocação, <strong>de</strong> modo que<br />

informações sobre aspectos não-funcionais, tais como disponibilida<strong>de</strong> e <strong>de</strong>sempenho, não<br />

são publicadas. Dessa forma, <strong>de</strong>terminar quais as possíveis falhas que um <strong>de</strong>terminado<br />

serviço po<strong>de</strong> vir a apresentar po<strong>de</strong> ser impossível sem as informações necessárias sobre<br />

cada serviço que o compõe. De fato, a disponibilida<strong>de</strong> <strong>de</strong> um serviço po<strong>de</strong> ser até menor<br />

que qualquer um dos componentes que lhe dão forma [Moser et al. 2007].<br />

Apesar da evi<strong>de</strong>nte necessida<strong>de</strong>, nenhuma especificação <strong>de</strong> confiabilida<strong>de</strong> no<br />

que tange à disponibilida<strong>de</strong> <strong>de</strong> serviços ainda foi <strong>de</strong>senvolvida. Isso ocorre, em<br />

gran<strong>de</strong> parte, <strong>de</strong>vido à dificulda<strong>de</strong> <strong>de</strong> esten<strong>de</strong>r as técnicas <strong>de</strong> replicação além das<br />

fronteiras <strong>de</strong> uma única organização, já que as tecnologias que elas usam no <strong>de</strong>senvolvimento<br />

<strong>de</strong> seus serviços são, possivelmente, não equivalentes. Nos últimos anos,<br />

vários middleware <strong>de</strong> replicação em serviços web foram <strong>de</strong>senvolvidos com o propósito<br />

<strong>de</strong> contornar essa limitação, <strong>de</strong>ntre eles FT-SOAP [Chen 2007], WS-Replication<br />

[Jiménez-Peris et al. 2006], Conectores <strong>de</strong> Tolerância a <strong>Falhas</strong> [Fabre and Salatge 2007]<br />

e a replicação híbrida adotada em [Froihofer et al. 2007].<br />

3.1. FT-SOAP<br />

FT-SOAP [Chen 2007] é um mecanismo <strong>de</strong> replicação passiva. Os componentes básicos<br />

<strong>de</strong>ssa especificação são: o Gerenciamento <strong>de</strong> <strong>Falhas</strong> que é utilizado para realizar o monitoramento<br />

<strong>de</strong> estado das réplicas, o Mecanismo <strong>de</strong> Log e Recuperação, responsável por<br />

fazer o log das invocações, <strong>de</strong> forma que elas não sejam perdidas na falha do gerenciador<br />

primário, e o Gerenciador <strong>de</strong> Replicação, que tem a função <strong>de</strong> monitorar e constituir os<br />

grupos <strong>de</strong> réplicas.<br />

O uso <strong>de</strong> componentes centralizados adiciona novos pontos <strong>de</strong> falhas ao sistema,<br />

<strong>de</strong> forma que até os componentes do próprio middleware <strong>de</strong>vem ser replicados.<br />

No mecanismo proposto neste artigo, cada réplica funciona como um mecanismo<br />

<strong>de</strong> replicação in<strong>de</strong>pen<strong>de</strong>nte, evitando a centralização encontrada na proposta FT-SOAP.<br />

3.2. WS-Replication<br />

WS-Replication [Jiménez-Peris et al. 2006] implementa replicação ativa no contexto dos<br />

serviços web. O protocolo <strong>de</strong> replicação aplicado é baseado no componente WS-Multicast<br />

que utiliza tecnologias básicas <strong>de</strong> WS (SOAP e WSDL) para promover sincronia entre as<br />

réplicas. Ao utilizar o WS-Multicast em sua estrutura, WS-Replication mantém na estrutura<br />

<strong>de</strong> replicação a in<strong>de</strong>pendência <strong>de</strong> plataformas inerente à arquitetura SOA, escalando<br />

o protocolo a operar diretamente sobre os serviços na Internet. Além disso, como nenhuma<br />

modificação é imposta à implementação dos serviços, a replicação é totalmente<br />

transparente aos usuários.<br />

O mecanismo <strong>de</strong> replicação implementado neste artigo, <strong>de</strong> maneira semelhante ao<br />

WS-Replication, é transparente aos usuários. No entanto, ao aplicar a replicação passiva,<br />

o mecanismo proposto requer menor processamento.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!