Você está na página 1de 9

Table of Contents

1 Introdução...........................................................................................................................................2
2 Fundamentos da Arquitetura Cliente..................................................................................................3
2.1 Características do Cliente............................................................................................................3
3 Fundamentos do servidor....................................................................................................................3
3.1 Características do Servidor..........................................................................................................3
4 Fundamentos da Arquitetura Cliente-Servidor....................................................................................4
Two-Tier..................................................................................................................................................4
Three-Tier................................................................................................................................................5
4.1 Exemplos Práticos........................................................................................................................5
4.2 Transparência de Localização......................................................................................................6
4.3 Comunicação entre Arquitetura cliente/servidor:.......................................................................6
Vantagens e Desvantagens de Cliente-Servidor..........................................................................................7
Desvantagens de Cliente-Servidor...........................................................................................................7
4.4 Vantagens de Cliente-Servidor....................................................................................................7
5 Conclusão............................................................................................................................................8
1 Introdução
A computação moderna depende cada vez mais de sistemas distribuídos para atender às
crescentes demandas de processamento e comunicação. A arquitetura cliente e servidor é um
dos modelos fundamentais em sistemas distribuídos, desempenhando um papel crucial na
organização e na eficiência da comunicação entre componentes de sistemas. Neste trabalho,
exploraremos os princípios, tipos e aplicações da arquitetura cliente e servidor, destacando sua
importância na computação distribuída.
2 Fundamentos da Arquitetura Cliente
O processo cliente realiza o envio das mensagens fazendo algum pedido ao servidor.
O cliente é a parte que interage com o usuário, possui a interface que o usuário utiliza para
requisitar as tarefas ao servidor, sendo chamado de front-end da aplicação.
Os processos clientes gerenciam as atividades dos usuários e realizam as validações dos dados
informados por estes.

2.1 Características do Cliente


 Interface gráfica
 Validação da entrada de dados
 Possibilidade de impressão local ou remota
 Capacidade de detectar quando uma solicitação feita não chega ao servidor
 Exigência de investimentos em equipamentos para suportar interfaces gráficas
sofisticadas
 Dados não estão disponíveis localmente; se houver replicação local, a consistência deve
ser mantida.

3 Fundamentos do servidor
 É o processo que responde a uma mensagem solicitando a realização de alguma tarefa
por parte do cliente. O processo servidor é chamado de back-end.
 O processo servidor pode oferecer serviços a muitos clientes, realiza pesquisas,
filtragens e atualizações em bancos de dados.
 Os serviços podem ser realizados diretamente pelo processo servidor ou através de
processos escravos criados por este para atender cada pedido do cliente, o que libera o
processo mestre do servidor para receber outras solicitações.

3.1 Características do Servidor
 Oferece serviços (e.g., busca e atualizações no banco de dados) para muitos clientes,
centralizando a manipulação de dados, manutenção de consistência e integridade
 Deve ter capacidade de processamento, acesso a disco, memória e comunicação para
atender os pedidos dos vários clientes
 Controle de concorrência (e.g., utilizando exclusão mútua no acesso a dados)
 Segurança: controle de acesso via senhas, a diversos níveis de informação
 Confiabilidade: a centralização facilita o gerenciamento do backup
 Caso falhe o servidor, todos os serviços são paralizados
4 Fundamentos da Arquitetura Cliente-Servidor
A arquitetura cliente-servidor é um modelo de computação que divide as funções de um
sistema em duas categorias principais: o cliente e o servidor. O cliente é responsável por
solicitar serviços ou recursos, enquanto o servidor atende a essas solicitações e fornece os
recursos solicitados. A comunicação entre eles ocorre por meio de protocolos de rede, como
HTTP, TCP/IP e outros.
Os servidores oferecem serviços a processos usuários, ou seja, executam a tarefa solicitada e
enviam uma resposta ao cliente que se traduz nos dados solicitados.
Os clientes solicitam um determinado serviço, através do envio de uma mensagem ao servidor.
Enquanto o processo servidor está trabalhando a solicitação, o cliente está livre para realizar
outras tarefas.

Camadas de Cliente-Servidor

Two-Tier: organização em duas camadas - o cliente comunica-se diretamente com o servidor.


 A base de dados fica no servidor.
 As regras e a lógica da aplicação no cliente.
 Problema de manutenção - toda vez que uma aplicação for alterada, tanto bancos de
dados como aplicações clientes precisam ser alteradas.
 A aplicação cliente precisa ser instalada em todos os nós.
Three-Tier: uma camada intermediária é criada entre o servidor e o cliente.
A função da camada intermediária é armazenar as regras do negócio e a lógica da aplicação.
O cliente fica responsável apenas pela interface com o usuário.
Qualquer alteração na camada intermediária é imediatamente assumida por todas as
aplicações e pelo banco de dados.

Peer-to-Peer: nesta arquitetura todos os participantes são ao mesmo tempo servidores


(oferecem serviços e recursos) e clientes (usam serviços e recursos) uns dos outros. Muitos
serviços de compartilhamento de arquivos e de comunicação entre usuários se estruturam
dessa forma.

4.1 Exemplos Práticos


A arquitetura cliente e servidor é amplamente utilizada em diversos cenários, como:

 Aplicações Web: Websites usam essa arquitetura para servir conteúdo aos navegadores
dos clientes.
 Bancos de Dados Distribuídos: Sistemas de gerenciamento de bancos de dados
distribuídos usam servidores para armazenar e recuperar dados.
 Jogos Online: Muitos jogos online utilizam essa arquitetura para manter a
sincronização entre jogadores.

4.2 Transparência de Localização


Um aspecto importante nos sistemas cliente/servidor:
Transparência - para o usuário não deve existir diferença entre acessar um recurso local ou
remoto, não deve ser motivo de preocupação para o usuário a localização do servidor e a
natureza da comunicação
ESCALABILIDADE E DESEMPENHO

A escalabilidade é uma consideração crítica em sistemas distribuídos. Discutiremos como a


arquitetura cliente e servidor pode ser dimensionada para lidar com um grande número de
clientes e como otimizar o desempenho para atender às necessidades dos usuários.

4.3 Comunicação entre Arquitetura cliente/servidor:


A comunicação entre o cliente e o servidor é transacional e cooperativa.
A característica transacional indica que o servidor envia apenas os resultados relevantes do
pedido do cliente. Assim, a quantidade de dados transferida tende a ser a menor quantidade
necessária para o cliente executar seu trabalho.
A natureza cooperativa do paradigma cliente/servidor significa que ocorre um processamento
significativo e colaborativo nos extremos cliente e servidor.
Sistemas Cliente-Servidor dispensam um mecanismo especial para sincronizar os componentes
(clientes e servidor(s)); a natureza da passagem de mensagens elimina a necessidade de um
mecanismo explícito.
A comunicação cliente/servidor é baseada em
"Chamadas de Procedimento Remoto" (Remote Procedure Calls - RPC)
Vantagens e Desvantagens de Cliente-Servidor
Desvantagens de Cliente-Servidor (em relação a sistemas centralizados)
 Aumento do custo do hardware, no servidor e no cliente
 Custo do software, incluindo servidor de banco de dados, aplicativos, ferramentas de
desenvolvimento e administração
 Custo administrativo e de pessoal de suporte, incluindo treinamento
 Dificuldades de configuração e identificação/análise de problemas, devido à
complexidade.

4.4 Vantagens de Cliente-Servidor


 Centralização da manutenção e da administração de hardware;
 Compatibilidade total com diferentes aplicações;
 Redução de espaço físico, por tudo se concentra em um único servidor;
 Facilidade na migração de ambientes;
5 Conclusão
Em conclusão, a arquitetura cliente e servidor é essencial para a operação eficiente de sistemas
distribuídos. Ela fornece uma estrutura organizada para comunicação e distribuição de
recursos. Ao entender os princípios, tipos e aplicações dessa arquitetura, podemos projetar
sistemas mais robustos e escaláveis. Em um mundo cada vez mais interconectado, a arquitetura
cliente e servidor desempenha um papel central na evolução da computação distribuída.
REFERENCIA BIBLIOGRAFICA
https://wiki.inf.ufpr.br/maziero/lib/exe/detail.php?id=espec%3Aintroducao&media=espec:arq-
p2p.png

http://www.inf.ufsc.br/~r.fileto/Disciplinas/BD-Avancado/Aulas/03-ClienteServidor.pdf

https://www.capterra.com.br/glossary/743/clientserver

https://www.controle.net/faq/cliente-servidor-uma-estrutura-para-a-computacao-centralizada

https://knoow.net/ciencinformtelec/informatica/clienteservidor-clientserver/

Você também pode gostar