Você está na página 1de 3

Lista 02 – Sistemas Distribuídos

Lucas Mesquita R. Ferreira

1. A disponibilidade é afetada pela quantidade de usuários ativos para o


compartilhamento dos objetos, onde em determinado momento é possível que
poucos usuários estejam compartilhando o objeto, provocando maior lentidão na
reunião dos pacotes, já a segurança é afetada por conta do acesso e transmissão
por parte dos próprios usuários, onde um usuário pode transmitir um pacote
contendo código malicioso.
2. A middleware tem como objetivo prover a comunicação entre diferentes
serviços, abstraindo a heterogeneidade de redes, sistemas operacionais e
linguagens de programação através de operações bem definidas em uma
interface. A middleware é importante pois permite a comunicação entre tais
sistemas de forma simples, evitando a reescrita de código. Um exemplo de
middleware é o protocolo REST, o qual permite a comunicação com base nos
protocolos HTTP, sendo utilizado por serviços web para realizar comunicação
com outros serviços.
3. Ao se acessar outros servidores através da rede, não se tem garantia acerca do
tempo de resposta do servidor, o qual pode estar lidando com várias outras
requisições, sendo possível que a requisição realizada ainda não tenha chego ao
mesmo por conta de atrasos no canal, onde também não se tem um tempo
determinado para condução da mensagem. Quando se lida com servidores
externos, não é possível definir um limite de tempo de resposta.
4.
a. A primitiva bloqueante bloqueia o processo até que sua requisição seja
respondida ou até que ele termine a execução da requisição realizada, já
a não bloqueante se utiliza do buffer para continuar a execução enquanto
o buffer envia os resultados ou recebe as requisições dos outros
processos, onde o processo irá se comunicar com o buffer. A vantagem
reside no ganho de desempenho, visto que o processo não ficará
bloqueado para a realização de uma ação.
b. As primitivas confiáveis devem se preocupar com questões como a
ordem de chegada dos pacotes no destino, bem como com a confirmação
de que a mensagem foi entregue. Já as não confiáveis não se preocupam
com tais detalhes, o que permite um tempo de execução menor, sendo
mais rápidas, o que justifica sua utilização em certos casos.
5. Os jogos online que necessitavam de código móvel flash, ganhavam em
desempenho com a execução de código local, visto que a banda comumente não
era de alta velocidade.
6. As vantagens das aplicações cliente-servidor tradicionais são a menor
complexidade de gerenciamento do sistema, bem como a simplicidade na
comunicação entre processos clientes e servidores, possuindo papéis bem
definidos, uma desvantagem seria o custo para promover escalabilidade e
replicação, onde novos servidores devem ser alocados. No que tange às
aplicações peer-to-peer, as vantagens estão no aumento da recursos para o
processamento equivalente ao número de usuários, bem como a distribuição do
serviço em várias máquinas, balanceando o processamento, uma desvantagem
seria a complexidade da aplicação, a qual deve lidar com a coordenação de
pacotes em várias máquinas heterogêneas.
7. São subtransações ligadas a uma transação maior, sendo úteis pois evitam a
necessidade de consulta a cada servidor de cada vez, realizando múltiplas
consultas através da definição de uma transação. Sites de comparação de preços
realizam transações aninhadas para realizar consultas a diversas lojas sem a
necessidade de consultar cada uma individualmente.
8. São redes privadas, as quais se utilizam de canais criptografados em nível de IP.
As VPNs permitem a conexão entre intranets, bem como a conexão de um
usuário externo. Como exemplo é possível citar um funcionário que deseja
acessar a intranet de sua organização remotamente, por meio da VPN é possível
o fazer através de uma rede pública, caso seu host implemente a criptografia IP,
onde o host utilizado pelo funcionário pode compartilhar uma chave com o
firewall da organização, a fim de definir um canal seguro para acesso.
9. O código móvel é um código que deve ser baixado a partir da necessidade de
utilização de algum serviço na web, sendo executado localmente, onde um
exemplo é o Flash, o qual permitia a execução de jogos e afins nos navegadores.
Já o agente móvel é um agente que utiliza recursos do sistema para realização de
algum fim, como por exemplo a atualização de antivírus em uma empresa, o
agente móvel pode verificar a versão do software em cada máquina e requerer a
atualização.
10. São falhas que ocorrem por parte do processo ou canal, onde a execução de uma
ação não é finalizada. O timeout é importante para que se saiba que determinado
processo não respondeu a uma requisição, sendo possível também confirmar a
entrega da requisição. Na omissão de recepção, o processo não recebe a
mensagem no seu buffer de envio, onde o outro processo solicitante pode checar
o timeout e inferir que o processo requisitado não está respondendo, podendo
proceder com o envio de nova requisição.
11. São relevantes do ponto de vista da definição de arquitetura do sistema com base
em modelos já consolidados, os quais identificam as características comuns e
necessárias aos sistemas distribuídos, onde há opções de implementação para
cada tipo de sistema. São relevantes pois definem as responsabilidades de cada
processo, sendo possível distribuir a carga de processamento para os mesmos,
localizando-os na rede, sendo possível também a previsão e tratamento de falhas
a partir de tal decisão de projeto.
12. Os servidores proxy são um tipo de servidor cache, haja vista que sua função
principal é a de manter as informações mais utilizadas ou mais recentes mais
perto do cliente, diminuindo as consultas a servidores externos e aumentando a
velocidade.
13. A criptografia é um método que visa a segurança no envio de mensagens, onde
seu conteúdo é oculto a partir de números de grande ordem, onde o destinatário
pode decriptografar a mensagem com base em uma chave compartilhada entre
os processos, tal método também pode ser usado para provar a identidade
daquele que envia a solicitação ou resultado da mesma, o que é realizado através
de autenticação com base na chave secreta.
14. Os sistemas devem ser desenvolvidos tendo em vista sua possível expansão
futura, evitando a reformulação do sistema para lidar com um grande número de
usuários, o que pode se tornar custoso caso feito após o crescimento. Um
sistema mal desenvolvido pode vir a gerar problemas de lentidão para os
usuários, bem como passar por períodos de indisponibilidade do serviço devido
à manutenção.
15. As principais vantagens são o desacoplamento espacial e temporal, onde no
primeiro o remetente não se preocupa com a identidade do destinatário, o qual
pode ser alterado sem grandes consequências ao primeiro, já o desacoplamento
temporal se refere a ausência da necessidade de existência simultânea dos
processos, os quais podem ser executados em momentos diferentes. A principal
desvantagem da comunicação indireta é a sobrecarga no desempenho, a qual
advém das implementações necessárias à indireção. A comunicação direta
comumente requer a existência simultânea dos processos, e ainda que o processo
remetente conheça a identidade do destinatário, a fim de realizar uma chamada
remota a ele.

Você também pode gostar