11.04.2013 Views

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

208 APÊNDICE A. DOORS<br />

situação e po<strong>de</strong> informar os coobjectos. Para que estas condições se verifiqu<strong>em</strong> foi adoptada a seguinte<br />

estratégia para a r<strong>em</strong>oção forçada <strong>de</strong> um servidor:<br />

1. Um qualquer servidor po<strong>de</strong> efectuar o pedido <strong>de</strong> r<strong>em</strong>oção forçada <strong>de</strong> um outro servidor j. No<br />

caso <strong>de</strong> mais do que um servidor pedir concorrent<strong>em</strong>ente a r<strong>em</strong>oção do mesmo servidor j, ape-<br />

nas o pedido que é executado primeiro (segundo uma or<strong>de</strong>m total <strong>de</strong>finida entre estes pedidos) é<br />

consi<strong>de</strong>rado.<br />

2. Cada servidor indica a sua concordância (ou discordância) na r<strong>em</strong>oção do servidor (no caso da<br />

r<strong>em</strong>oção ser motivada pela inacessibilida<strong>de</strong> ao servidor, cada servidor po<strong>de</strong> tomar a sua <strong>de</strong>cisão<br />

<strong>em</strong> função <strong>de</strong> conseguir ace<strong>de</strong>r ao servidor ou não). A partir do momento <strong>em</strong> que um servidor i<br />

concorda com a r<strong>em</strong>oção forçada do servidor j, i não po<strong>de</strong> executar mais nenhuma comunicação<br />

(sessão <strong>de</strong> sincronização) com j. Se qualquer servidor mostrar a sua discordância na r<strong>em</strong>oção<br />

do servidor j, o pedido <strong>de</strong> r<strong>em</strong>oção forçada é abortado (e todos os servidores po<strong>de</strong>m voltar a<br />

comunicar com j).<br />

3. Concorrent<strong>em</strong>ente, força-se a diss<strong>em</strong>inação entre todos os servidores do estado actual <strong>de</strong> todos<br />

os coobjectos (por forma a que sejam conhecidas todas as operações i<strong>de</strong>ntificadas pelo servidor a<br />

r<strong>em</strong>over).<br />

4. Em cada momento, <strong>de</strong>fine-se um número <strong>de</strong> or<strong>de</strong>m para cada servidor que replica um dado volume<br />

(<strong>de</strong>finido pela or<strong>de</strong>m <strong>de</strong> entrada no volume segundo a or<strong>de</strong>m total <strong>de</strong>finida para as operações <strong>de</strong><br />

filiação e consi<strong>de</strong>rando apenas os servidores que actualmente replicam o volume).<br />

5. A r<strong>em</strong>oção forçada <strong>de</strong> um servidor j po<strong>de</strong> prosseguir se o servidor com menor número <strong>de</strong> or<strong>de</strong>m<br />

verificar que: (1) todos os servidores do volume, com excepção do servidor j, concordaram com<br />

a r<strong>em</strong>oção (ou seja, mais nenhuma servidor aceitará comunicações <strong>de</strong> j); e (2) o estado actual do<br />

servidor reflecte os estados <strong>de</strong> todos os servidores no momento <strong>em</strong> que eles executaram a operação<br />

<strong>de</strong> concordância com a r<strong>em</strong>oção (ou seja, o estado actual reflecte todas as operações submetidas<br />

por j conhecidas nos servidores que continuarão a replicar o volume — dado que mais nenhuma<br />

comunicação com orig<strong>em</strong> <strong>em</strong> j é aceite pelos servidores após <strong>de</strong>clarar<strong>em</strong> a sua concordância com a<br />

r<strong>em</strong>oção). Neste caso, no servidor com menor número <strong>de</strong> or<strong>de</strong>m, informam-se todos os coobjectos<br />

da r<strong>em</strong>oção <strong>de</strong> j (<strong>de</strong> forma a que os coobjectos tom<strong>em</strong> as medidas necessárias à r<strong>em</strong>oção segura<br />

do servidor), após o que se submete a operação <strong>de</strong> r<strong>em</strong>oção <strong>de</strong> j no coobjecto <strong>de</strong> filiação (durante<br />

a execução <strong>de</strong>stas acções, o servidor não efectua comunicações com outros servidores ou clientes).<br />

Po<strong>de</strong>m existir situações <strong>em</strong> que mais do que um servidor necessite <strong>de</strong> ser r<strong>em</strong>ovido simultaneamente<br />

ou que o servidor com menor número <strong>de</strong> or<strong>de</strong>m seja um dos servidores a r<strong>em</strong>over. Para consi<strong>de</strong>rar

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

Saved successfully!

Ooh no, something went wrong!