Interface Cliente / Servidor





1. Arquitetura Cliente / Servidor:


Cliente/Servidor � um dos termos mais usados no mundo da inform�tica no momento e pode ser sucintamente definido como um sistema de computa��o que utiliza tr�s componentes b�sicos para o compartilhamento de recursos: um computador-cliente, um computador-servidor e uma rede para conect�-los.

Tanto o cliente quanto o servidor podem ser computadores com variados graus de capacidade de processamento, que compartilham elementos de computa��o necess�rios para a execu��o do trabalho.
Geralmente, o computador-cliente � um PC instalado na mesa de trabalho do usu�rio e o computador-servidor � um servidor de rede, podendo ser um PC avan�ado, um minicomputador (atualmente dito de m�dio porte), uma esta��o de trabalho ou um mainframe. A rede, local ou remota, pode ser qualquer uma capaz de estabelecer a comunica��o entre os dois.

A comunica��o entre cliente e servidor deve ser completamente independente da plataforma do servidor (hardware e software), bem como da tecnologia de comunica��o utilizada (hardware e software). Por exemplo, um cliente DOS deve ser capaz de se comunicar da mesma forma que um servidor Unix ou OS/2, indiferentemente do sistema operacional do servidor e da tecnologia de LAN que conecta o cliente ao servidor.

Quando um sistema cliente/servidor utiliza mais de um servidor para atender e processar as requisi��es de informa��es emitidas pelos clientes, t�m-se um ambiente multiservidor .

Neste tipo de sistema, � conveniente e desej�vel que os servidores se comuniquem entre si para fornecerem servi�os aos clientes sem que estes tomem conhecimento da exist�ncia de m�ltiplos servidores ou da
comunica��o intra-servidor. Assim, tal como em um ambiente de processamento distribu�do, o cliente n�o precisa se preocupar com o local onde sua consulta ou comando vai ser executado. Ele apenas solicita as informa��es e recebe os resultados.


Ent�o, a arquitetura cliente/servidor divide uma aplica��o em processos separados, executando em m�quinas separadas, sobre uma rede. As tarefas definidas pelo usu�rio podem ser divididas em subtarefas a serem executadas ou pelo pr�prio cliente ou pelo(s) servidor(es), de acordo com os recursos proporcionados pelo sistema operacional de rede. Quanto mais avan�ado for este sistema operacional, menor ser� o tamanho da aplica��o.
Por exemplo, o Microsoft LAN Manager possui um conjunto rico em funcionalidades voltadas para o desenvolvimento de sistemas cliente/servidor. Desta forma, uma aplica��o cliente/servidor executando sobre o LAN Manager necessitar� conter bem menos c�digo, pois muitos dos recursos j� s�o fornecidos pelo sistema operacional da rede. A conseq��ncia direta disso � a redu��o do tempo de desenvolvimento da aplica��o.


Entretanto, se a mesma aplica��o for executada sobre um sistema operacional de rede que proporcione um simples compartilhamento de arquivos e/ou de impressoras, o c�digo dessa aplica��o ter� que implementar os recursos n�o propiciados pelo sistema, e neste caso, o c�digo poder� at� dobrar de tamanho, al�m de aumentar bastante o tempo gasto com o desenvolvimento do sistema.


2. Cliente/Servidor X Servidor de Arquivos:


O desenvolvimento da tecnologia cliente/servidor baseou-se principalmente nas defici�ncias apresentadas pela arquitetura servidor de arquivos, onde ocorre o envio de arquivos inteiros como resposta a uma solicita��o de dados feita por uma esta��o, n�o havendo uma sele��o pr�via dos mesmos, ocasionando assim, uma intensifica��o do tr�fego da rede.
Isto pode ser observado na figura 1:


Figura 1: Arquitetura Servidor de Arquivos


Esta situa��o � agravada quando a quantidade de dados processados � muito grande, ou quando estes s�o acessados por muitos usu�rios simultaneamente.


Por outro lado, na arquitetura cliente/servidor, os servidores de banco de dados processam as requisi��es de dados e enviam somente os dados requisitados de volta �s aplica��es que est�o sendo executadas nos PCs clientes, como mostra a figura 2 :


Figura 2: Arquitetura Cliente/Servidor com Servidor de Banco de Dados


O PC, ent�o, � respons�vel somente pela execu��o das aplica��es do usu�rio, gera��o de requisi��es de dados e controle da intera��o usu�rio-aplica��o atrav�s de sofisticadas interfaces (de f�cil utiliza��o), baseadas em Windows, com caixas de di�logo, bot�es, menus suspensos, barras de rolagens e outros recursos que simplificam o uso do programa. Assim, pode-se tirar mais proveito dos sofisticados recursos gr�ficos dispon�veis para os PCs (atrav�s das GUIs - Graphical User Interfaces) ou ent�o, das vantagens de hardware proporcionadas pelas esta��es de trabalho, uma vez que os clientes est�o livres da tarefa de processar os dados.


Os servidores de banco de dados, por sua vez, executando somente tarefas de gerenciamento, proporcionam manuten��o da integridade dos dados, recupera��o de erros, controle de seguran�a e, geralmente, podem otimizar as tarefas concorrentes de acesso e atualiza��o de dados.

A arquitetura cliente/servidor procura otimizar o uso dos recursos de hardware e software pela distribui��o do trabalho de forma equilibrada, atrav�s da separa��o das fun��es em duas partes: a por��o front-end executando aplica��es nos computadores clientes ou esta��es de trabalho, e a por��o back-end composta pelo servidor de banco de dados, que armazena os dados e gerencia as requisi��es sobre os mesmos, permitindo que o acesso seja realizado por diferentes aplica��es.


3. Vantagens da arquitetura cliente/servidor:

� O software e o hardware dos PCs que est�o cada vez mais baratos e mais poderosos, tornam-se um prato cheio para quem deseja implementar um downsizing, pois o cliente/servidor permite que se utilize recursos de PCs, minicomputadores e mainframes, simultaneamente.

� Divis�o mais eficiente do trabalho (parte do processo � realizado na por��o front-end e parte na back-end);

� Diminui��o do tr�fego de rede (apenas o resultado das consultas � transmitido do servidor ao cliente);

� O desenvolvimento de aplica��es que utilizam GUI, nos mais diversos ambientes, incrementou sensivelmente a qualidade dos sistemas do ponto de vista do usu�rio final;

� Os usu�rios n�o ficam limitados a um tipo de sistema operacional ou plataforma e, com isso, podem continuar usando os softwares j� conhecidos para acessar o banco de dados;


� Os dados podem ser protegidos contra perdas ou acessos indesejados, uma vez que o processamento dos mesmos � centralizado e executado por um sistema gerenciador de banco de dados (SGBD), projetado para esta tarefa, proporcionando assim, seguran�a e integridade, entre outros aspectos;

� Os clientes podem acessar mais dados, devido � versatilidade do SQL no acesso a dados em diferentes plataformas (padroniza��o e portabilidade).


4. Desvantagens:

� Aumento do custo administrativo e de pessoal de suporte para manter o servidor de banco de dados. Como este tipo de arquitetura possibilita a intera��o entre diferentes plataformas, em alguns casos, poder� haver um custo adicional com treinamento para familiariza��o do grupo de suporte com novas plataformas e/ou sistemas operacionais;

� Aumento do custo de hardware, principalmente quando se deseja manter um n�vel razo�vel de performance do sistema, o que torna necess�rio a disponibilidade de uma m�quina dedicada executando o servidor de banco de dados, com recursos suficientes para proporcionar o desempenho esperado. Soma-se a isso a necessidade de equipamentos de suporte para prote��o contra falta de energia;

� O custo do software do servidor do banco de dados, al�m dos aplicativos auxiliares e ferramentas de desenvolvimento, os quais ser�o mais caros se comparados aos servidores de arquivos;

� Devido � complexidade e ao grande n�mero de partes que comp�em um sistema cliente/servidor, torna-se mais dif�cil a identifica��o de pontos problem�ticos e a configura��o do sistema.


5. Aplica��es :

O emprego da tecnologia Cliente/Servidor depende de v�rios fatores: entre eles o objetivo ao qual se quer alcan�ar, o montante de investimento a ser feito, os recursos humanos (pessoas envolvidas), as aplica��es a serem desenvolvidas e implantadas e o tempo de implanta��o do projeto.

As aplica��es s�o: Internet, Intranet, Sistemas de Gerenciamento de Documentos, Sistemas de Apoio a Decis�o, Sistemas Gerenciais, Correio Eletr�nico, Servidores de Fax, Servidores de Impress�o, Servidores de Arquivos, Servidores de Aplica��es, Servidores de Banco de Dados, enfim, Servidores de Informa��o.

Volta � p�gina principal.

 

Todos os textos sobre inform�tica contidos neste Site
s�o de propriedade do autor.
Voc� pode copiar, mas n�o usar o mesmo texto para seu pr�prio Site.

� Copyright 1997-2002 Alexandre Terra Iafullo
Todos os direitos reservados.

Hosted by www.Geocities.ws

1