Buscar

apostila Sistemas de Informação Distribuídos para Internet I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistemas de 
Informação 
Distribuídos para 
Internet I
Itsche Baran
Revisada por Itsche Baran
APRESENTAÇÃO
É com satisfação que a Unisa Digital oferece a você, aluno(a), esta apostila de Sistemas de Informa-
ção Distribuídos para Internet I, parte integrante de um conjunto de materiais de pesquisa voltado ao 
aprendizado dinâmico e autônomo que a educação a distância exige. O principal objetivo desta apostila 
é propiciar aos(às) alunos(as) uma apresentação do conteúdo básico da disciplina.
A Unisa Digital oferece outras formas de solidificar seu aprendizado, por meio de recursos multidis-
ciplinares, como chats, fóruns, aulas web, material de apoio e e-mail.
Para enriquecer o seu aprendizado, você ainda pode contar com a Biblioteca Virtual: www.unisa.br, 
a Biblioteca Central da Unisa, juntamente às bibliotecas setoriais, que fornecem acervo digital e impresso, 
bem como acesso a redes de informação e documentação.
Nesse contexto, os recursos disponíveis e necessários para apoiá-lo(a) no seu estudo são o suple-
mento que a Unisa Digital oferece, tornando seu aprendizado eficiente e prazeroso, concorrendo para 
uma formação completa, na qual o conteúdo aprendido influencia sua vida profissional e pessoal.
A Unisa Digital é assim para você: Universidade a qualquer hora e em qualquer lugar!
Unisa Digital
SUMÁRIO
INTRODUÇÃO ............................................................................................................................................... 5
1 CONCEITOS INICIAIS ........................................................................................................................... 7
1.1 Sistemas Distribuídos .....................................................................................................................................................7
1.2 Arquitetura .........................................................................................................................................................................7
1.3 Arquiteturas Utilizadas ..................................................................................................................................................8
1.4 Fluxo Conceitual Detalhado .....................................................................................................................................15
1.5 Resumo do Capítulo ....................................................................................................................................................20
1.6 Atividades Propostas ...................................................................................................................................................20
2 DESENVOLVIMENTO ......................................................................................................................... 23
2.1 Ambientes e Linguagens de Programação ........................................................................................................23
2.2 HTML, JavaScript e Navegador (Browser) ............................................................................................................23
2.3 Servidor Web (Web Server) .........................................................................................................................................24
2.4 Fluxo Conceitual Detalhado .....................................................................................................................................26
2.5 Resumo do Capítulo ....................................................................................................................................................30
2.6 Atividades Propostas ...................................................................................................................................................30
3 CONSIDERAÇÕES FINAIS ............................................................................................................... 33
RESPOSTAS COMENTADAS DAS ATIVIDADES PROPOSTAS ..................................... 35
REFERÊNCIAS ............................................................................................................................................. 37
Unisa | Educação a Distância | www.unisa.br
5
INTRODUÇÃO
Esta apostila refere-se à disciplina Sistemas de Informação Distribuídos para Internet I do curso de 
Bacharelado em Sistemas de Informação, na modalidade a distância, da Universidade de Santo Amaro 
(Unisa).
A evolução tecnológica contínua que caracteriza a área de processamento de dados permitiu que, 
hoje em dia, um usuário solicite de um sistema de informação um resultado desejado e tal resultado seja 
obtido por meio do processamento coordenado e colaborativo de vários componentes de software. 
Tais componentes de software são executados em diferentes computadores, ligados em rede, e se 
comunicam entre si por meio de troca de mensagens.
Sistemas de informação com tais características são denominados sistemas distribuídos e atual-
mente vêm sendo disponibilizados de forma crescente no ambiente em que a rede que conecta os com-
putadores envolvidos é a internet.
Tal crescimento se deve aos benefícios obtidos dessa maneira por empresas e outras instituições.
Uma das vantagens, por exemplo, se encontra na melhoria da interação delas com seus parceiros, 
clientes e fornecedores. 
Neste curso serão abordados conceitos básicos referentes a sistemas de informação distribuídos 
para internet e aos componentes de software que os constituem.
Os conceitos apresentados exporão as características:
ƒƒ da arquitetura em camadas, frequentemente usada em projetos dessa espécie; 
ƒƒ das camadas de apresentação, negócio, dados e comunicação;
ƒƒ da arquitetura cliente-servidor, também presente em projetos dessa espécie;
ƒƒ da atuação de um programa como cliente ou servidor. 
Também serão tratados os diferentes tipos de programas que implementam um sistema de infor-
mação distribuído para internet de modo a obedecer às arquiteturas mencionadas.
Ocorrerá o detalhamento do fluxo de execução coordenada e colaborativa de tais programas.
Será apresentado um conjunto de recursos de software que possibilita o aumento da produtivida-
de no desenvolvimento de tais sistemas.
Itsche Baran 
Unisa | Educação a Distância | www.unisa.br
7
CONCEITOS INICIAIS1
Cada tipo diferente de resultado desejado 
corresponde à execução de um serviço.
Na execução de cada tipo de serviço, vários 
programas, em diferentes computadores, traba-
lham de forma coordenada e colaborativa para se 
obter o resultado desejado pelo usuário.
Foi a evolução contínua na área de proces-
samento de dados que possibilitou o uso crescen-
te de sistemas desse tipo.
1.1 Sistemas Distribuídos
Tal evolução se manifesta através do au-
mento constante da capacidade do hardware em 
aspectos como:
ƒƒ velocidade de processamento;
ƒƒ tamanho da memória principal;
ƒƒ volume de armazenamento de dados;
ƒƒ melhoria dos meios para transmissão 
de dados.
Igual melhoria é notada no software.
A expansão da internet constitui outro fator 
que alavanca a demanda por sistemas de infor-
mação distribuídos. 
AtençãoAtenção
Caro(a) aluno(a), entende-se por sistema de in-
formação distribuído um sistema no qual vários 
programas, em diferentes computadores, traba-
lham de forma coordenada e colaborativa para se 
obter os resultados desejados pelo usuário.
1.2 Arquitetura
Denomina-se arquitetura de um sistema a 
descrição: 
ƒƒ de cada um de seus componentes;
ƒƒ de como eles se relacionam entre si.
No caso do software de um sistema de infor-
mação distribuído:
ƒƒ os componentes são programas;
ƒƒ tais programas se relacionam entre si 
por meio de troca de mensagens con-
tendo dados e também pela passagem 
do controle de um programa para ou-
tro, em tempo de execução, de modo a 
garantir um trabalho coordenado e co-
laborativo.
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
8
Caro(a) aluno(a), entre as arquiteturas nas 
quais se baseiao desenvolvimento do software de 
sistemas de informação distribuídos, destacam-
-se:
ƒƒ arquitetura em camadas;
ƒƒ arquitetura cliente-servidor.
Arquitetura em Camadas
As funções geralmente cumpridas por um 
programa convencional batch são:
ƒƒ obtenção de dados de entrada necessá-
rios, a partir de arquivos, e seu armaze-
namento em variáveis do programa;
ƒƒ início do processamento, em que os da-
dos de entrada são validados;
ƒƒ obtenção de dados previamente arma-
zenados em bases de dados;
ƒƒ término do processamento;
ƒƒ exibição do resultado ao usuário.
As funções geralmente cumpridas por um 
programa convencional on-line são:
ƒƒ obtenção de dados de entrada necessá-
rios, composta pelo pedido ao usuário 
do fornecimento dos dados, pelo arma-
zenamento de tais dados em variáveis 
do programa e pela validação deles;
ƒƒ início do processamento, em que os da-
dos de entrada são validados;
ƒƒ obtenção de dados previamente arma-
zenados em bases de dados;
ƒƒ término do processamento;
ƒƒ exibição do resultado ao usuário.
Tais funções aparecem no fluxograma a se-
guir (Figura 1):
1.3 Arquiteturas Utilizadas
Figura 1 – Estrutura de um programa convencional.
Diz-se que as funções de “Obtenção de da-
dos de entrada necessários” e “Exibição do resul-
tado” constituem a camada de apresentação do 
programa.
Da mesma forma, as funções de “Início do 
processamento” e “Término do processamento” 
compõem a camada de negócio.
De maneira igual, a função “Obtenção de 
dados previamente armazenados em bases de 
dados” corresponde à camada de dados.
Assim, caro(a) aluno(a), pode-se encarar um 
programa convencional como sendo formado 
por três camadas:
ƒƒ de apresentação, que interage com o 
usuário e a camada de negócio;
ƒƒ de negócio, que interage com as cama-
das de apresentação e de dados;
ƒƒ de dados, que interage com a camada 
de negócio.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
9
Tal composição é destacada na Figura 2.
Figura 2 – Arquitetura em camadas.
Desse modo, caro(a) aluno(a), verifica-se 
que o mesmo resultado fornecido por um progra-
ma convencional consegue ser alcançado pelo 
trabalho conjunto de vários programas, que im-
plementam as camadas mencionadas.
Cada um desses programas pode ser exe-
cutado em computadores diferentes e a coorde-
nação e colaboração entre eles são mantidas por 
meio:
ƒƒ da troca de mensagens e respostas en-
tre eles; 
ƒƒ da maneira pela qual, durante a execu-
ção, acontecerá a passagem de controle 
entre eles.
Para atender a tais características, num sis-
tema de informação distribuído, existe uma ca-
mada adicional: a camada de comunicação, que 
intermedeia a troca de mensagens e respostas 
entre as demais camadas (Figura 3).
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
10
Figura 3 – Camada de comunicação.
Caro(a) aluno(a), a figura mostra que, após 
solicitar os dados de entrada ao usuário e recebê-
-los, por meio da função “Obtenção de dados de 
entrada necessários”, o programa que implemen-
ta a camada de apresentação transfere tais dados 
para a camada de comunicação através da Men-
sagem 1.
A camada de comunicação encaminha a 
Mensagem 1 para a camada de negócio, onde os 
dados são manuseados na função “Início do pro-
cessamento”.
Havendo necessidade de dados adicionais 
para prosseguir a execução, a camada de negó-
cio transfere a Mensagem 2 para a camada de co-
municação, que a encaminha para a camada de 
dados.
A Mensagem 2 contém os argumentos de 
pesquisa com os quais a função “Obtenção de 
dados previamente armazenados em bases de 
dados” obterá os dados solicitados e os transfe-
rirá para a camada de comunicação por meio da 
Resposta 2.
A camada de comunicação encaminha a 
Resposta 2 para a camada de negócio, onde a 
função “Término do processamento” os utiliza 
para elaborar o resultado desejado pelo usuário.
Esse resultado, contido na Resposta 1, é 
transferido pela camada de negócio para a cama-
da de comunicação que a encaminha para a ca-
mada de apresentação.
Nela, a função “Exibição do resultado” apre-
senta o resultado desejado para o usuário.
Uma das maneiras de estabelecer a camada 
de comunicação é por meio do uso do programa 
TCP/IP nos computadores nos quais são executa-
dos os programas que implementam as demais 
camadas.
O TCP/IP é um programa que implementa 
sob a forma de software as especificações do con-
junto de protocolos denominado Transmission 
Control Protocol/Internet Protocol (TCP/IP).
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
11
Arquitetura Cliente-Servidor
Como foi visto, caro(a) aluno(a), as cama-
das de apresentação, de negócio e de dados, que 
compõem um programa convencional executado 
num único computador, podem ser distribuídas 
para executar em diferentes computadores, de 
maneira colaborativa e coordenada (Figura 4).
Figura 4 – Distribuição das camadas.
CAMADA DE APRESENTAÇÃO
CAMADA DE NEGÓCIOS
CAMADA DE DADOS
É necessário que as camadas interajam en-
tre si por meio de troca de mensagens.
Nos sistemas de informação distribuídos 
para internet, tais mensagens são trocadas atra-
vés da web, via camada de comunicação.
Isso se torna possível quando, por exemplo, 
em cada computador onde se encontra um pro-
grama que implementa uma das camadas de um 
sistema de informação distribuído também se es-
teja executando o programa TCP/IP.
Assim, caro(a) aluno(a), o TCP/IP é um dos 
softwares que podem ser empregados para com-
por a camada de comunicação de um sistema de 
informação distribuído (Figura 5).
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
12
Figura 5 – Presença do programa TCP/IP.
A Figura 6 mostra o programa que implementa a camada de apresentação recebendo os dados de 
entrada fornecidos pelo usuário.
Figura 6 – Entrada dos dados pelo usuário.
O programa da camada de apresentação, caro(a) aluno(a), repassa para o TCP/IP, executado no 
mesmo computador, mensagens onde constam:
ƒƒ os dados recebidos do usuário; 
ƒƒ endereço IP do computador de destino e da porta usada pelo programa da camada de negócio 
no TCP/IP de destino (Figura 7).
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
13
Figura 7 – Interação entre o programa da camada de apresentação e o TCP/IP.
O TCP/IP de origem acrescenta aos dados recebidos da camada de apresentação o endereço IP do 
computador no qual está executando e a porta correspondente ao programa da camada de apresenta-
ção, e os envia, através da web, via mensagem para o TCP/IP de destino (Figura 8).
Figura 8 – Uso da web.
O TCP/IP de destino, caro(a) aluno(a), recebe a mensagem (Figura 9).
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
14
Figura 9 – Comunicação entre TCP/IPs.
O TCP/IP de destino repassa os dados para o programa que implementa a camada de negócio (Fi-
gura 10).
Figura 10 – Interação entre TCP/IP e programa da camada de negócio.
E assim sucessivamente, caro(a) aluno(a), 
as mensagens e respostas necessárias vão sendo 
trocadas entre as diferentes camadas, permitindo 
seu trabalho coordenado e colaborativo.
Como foi visto, o programa que implemen-
ta a camada de apresentação passa dados a se-
rem processados pelo programa que implementa 
a camada de negócio.
Assim, pode-se considerar que o programa 
da camada de apresentação é um “cliente” do pro-
grama da camada de negócio, pois este lhe pres-
tará o serviço de processar os dados.
Por esse mesmo motivo, o programa que 
implementa a camada de negócio pode ser enca-
rado como um “servidor” do programa da camada 
de apresentação; ao mesmo tempo que é “cliente” 
do programa que implementa a camada de da-
dos.
Essa é a razão pela qual a arquitetura descri-
ta é denominada de cliente-servidor.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
15
Deve-se notar que a internet constitui um 
ambiente extremamentefavorável ao uso de sis-
temas de informação distribuídos.
O fluxo conceitual detalhado que será abor-
dado a seguir permite consolidar o conhecimen-
to a respeito:
ƒƒ dos diferentes tipos de programas en-
volvidos em tais sistemas;
ƒƒ do relacionamento entre eles.
Embora frequentemente mencionado na 
descrição, cabe salientar que o programa TCP/IP 
não aparece representado nas figuras apresenta-
das neste tópico.
Desse modo, caro(a) aluno(a), sempre deve 
ser lembrado que os demais programas não tro-
cam mensagens diretamente entre si.
1.4 Fluxo Conceitual Detalhado
Passam tais mensagens ao TCP/IP do com-
putador em que se encontram e este se encarre-
ga de seu encaminhamento ao destino.
Outra observação se refere à nomenclatura 
adotada.
Quando um programa atua como cliente, 
emite mensagens.
Ao desempenhar o papel de servidor, emite 
respostas. 
O fluxo se inicia na situação de um usuário 
que ativa um programa cliente para obter um re-
sultado desejado.
Em consequência, o programa cliente exibe 
no monitor da estação de trabalho a solicitação 
dos dados de entrada necessários.
O usuário lê a mensagem e fornece ao pro-
grama cliente os dados solicitados (Figura 11).
Figura 11 – Interação inicial entre usuário e programa cliente.
 
Serviço 
 
Dados? 
 
Dados 
USUÁRIO TROCA DE MENSAGENS PROGRAMA CLIENTE
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
16
Como foi dito, na estação de trabalho onde 
é executado o programa cliente, também existe o 
programa TCP/IP.
Desse modo, caro(a) aluno(a), o programa 
cliente, usando as instruções de programação 
adequadas, pede ao TCP/IP o envio para um pro-
grama do tipo servidor, da mensagem 1, a qual 
contém, basicamente:
ƒƒ o endereço IP da estação de trabalho 
origem da mensagem 1;
ƒƒ a porta do TCP/IP da estação de traba-
lho usada pelo programa cliente;
ƒƒ o endereço IP do computador de des-
tino; 
ƒƒ a porta, no TCP/IP de destino, usada 
pelo programa do tipo servidor que 
processará os dados fornecidos pelo 
usuário;
ƒƒ os dados fornecidos pelo usuário.
O TCP/IP da estação de trabalho envia, por 
meio da web, a mensagem 1 para o programa 
TCP/IP do computador onde executa, permanen-
temente, o programa do tipo servidor requerido; 
tal TCP/IP entrega a mensagem 1 para o progra-
ma servidor (Figura 12).
Figura 12 – Programas cliente e servidor.
O programa servidor recebe a mensagem 1 
e começa a processar os dados nela contidos.
Ao efetuar essa tarefa, costumeiramente 
necessita solicitar dados, previamente armaze-
nados em bases de dados, para um programa do 
tipo servidor de dados.
Nessa situação, o programa servidor solicita 
ao TCP/IP do seu computador que envie a mensa-
gem 2 contendo:
ƒƒ o endereço IP do computador origem 
da mensagem;
ƒƒ a porta do TCP/IP do computador cor-
respondente ao programa servidor;
ƒƒ o endereço IP do computador onde 
executa o SGBD; 
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao SGBD;
AtençãoAtenção
Caro(a) aluno(a), o programa servidor de dados 
corresponde, em geral, a um Sistema Gerencia-
dor de Banco de Dados (SGBD) e, muitas vezes, se 
encontra em outro computador.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
17
ƒƒ os argumentos de pesquisa que o SGBD 
precisa para obter, na base de dados, as 
informações que o programa servidor 
precisa.
O TCP/IP do computador do programa ser-
vidor envia, por meio da web, a mensagem 2 para 
o programa TCP/IP do computador onde executa, 
permanentemente, o SGBD; tal TCP/IP entrega a 
mensagem 2 para o SGBD (Figura 13).
Figura 13 – Programas cliente, servidor e servidor de 
dados.
O SGBD recebe a mensagem 2 e, com base 
nos argumentos de pesquisa nela contidos, aces-
sa a base de dados e obtém as informações de 
que o programa servidor necessita.
Aí, solicita ao TCP/IP do seu computador 
que envie uma resposta contendo:
ƒƒ o endereço IP do seu computador;
ƒƒ a porta do TCP/IP do seu computador 
que o SGBD usa;
ƒƒ o endereço IP do computador onde 
executa o programa servidor; 
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao programa 
servidor;
ƒƒ os dados solicitados pelo programa ser-
vidor.
Caro(a) aluno(a), o TCP/IP do computador 
do SGBD envia, por meio da web, a resposta 2 para 
o programa TCP/IP do computador onde executa, 
permanentemente, o programa servidor; tal TCP/
IP entrega a resposta 2 para o programa servidor 
(Figura 14).
Figura 14 – Resposta 2.
O programa servidor, caro(a) aluno(a), rece-
be a resposta 2 e, com base nos dados nela con-
tidos, completa seu processamento, obtendo o 
resultado solicitado pelo programa cliente.
Aí, solicita ao TCP/IP do seu computador 
que envie a resposta 1 contendo:
ƒƒ o endereço IP do seu computador;
ƒƒ a porta do TCP/IP do seu computador 
que o programa servidor usa;
ƒƒ o endereço IP da estação de trabalho 
onde executa o programa cliente; 
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
18
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao programa 
cliente;
ƒƒ o resultado solicitado pelo programa 
cliente.
AtençãoAtenção
O TCP/IP do computador do programa servidor 
envia, por meio da web, a resposta 1 para o pro-
grama TCP/IP da estação de trabalho onde exe-
cuta o programa cliente; tal TCP/IP entrega a res-
posta 1 para o programa cliente (Figura 15). 
Figura 15 – Resposta 1.
O programa cliente, caro(a) aluno(a), recebe a resposta 1 contendo o resultado, formata tal resulta-
do e o apresenta, no monitor da estação de trabalho, para o usuário (Figura 16).
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
19
Figura 16 – Resultado.
Como foi visto, caro(a) aluno(a), num siste-
ma de informação distribuído no ambiente da in-
ternet, um determinado resultado desejado pelo 
usuário é obtido pelo funcionamento colabora-
tivo e coordenado de programas do tipo cliente, 
de programas do tipo servidor e de programas do 
tipo servidor de dados, que executam em dife-
rentes computadores e implementam as diversas 
camadas que compõem um programa conven-
cional. 
Com base no que foi descrito, em relação à 
arquitetura em camadas pode-se concluir, caro(a) 
aluno(a), que:
ƒƒ o programa do tipo cliente implementa 
a camada de apresentação;
ƒƒ o programa do tipo servidor implemen-
ta a camada de negócio;
ƒƒ o programa do tipo servidor de dados 
implementa a camada de dados.
Ainda com base no que foi descrito em re-
lação à arquitetura cliente-servidor, pode-se con-
cluir que:
ƒƒ o programa cliente é cliente do progra-
ma servidor: envia-lhe uma mensagem 
e espera dele uma resposta;
ƒƒ para providenciar a resposta ao progra-
ma cliente, o programa servidor envia 
mensagem ao programa servidor de 
dados e espera uma resposta dele. Des-
se modo, o programa servidor é cliente 
do programa servidor de dados (SGBD);
ƒƒ o programa servidor de dados (SGBD) é 
servidor do programa servidor.
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
20
Este capítulo mostrou os seguintes tópicos principais:
ƒƒ o conceito de serviço;
ƒƒ o conceito de arquitetura;
ƒƒ arquitetura em camadas;
ƒƒ camada de apresentação;
ƒƒ camada de negócio;
ƒƒ camada de dados;
ƒƒ camada de comunicação;
ƒƒ TCP/IP;
ƒƒ arquitetura cliente-servidor;
ƒƒ o conceito de cliente;
ƒƒ o conceito de servidor;
ƒƒ processamento colaborativo e coordenado.
1.5 Resumo do Capítulo
Vamos, agora, avaliar a sua aprendizagem, efetuando as atividades a seguir.
1. Um conceito importante na especificação de um sistema de informação distribuído é: 
a) Arquitetura cliente-provedor.
b) Arquitetura consumidor-provedor.
c) Arquitetura público-servidor.
d) Arquitetura consumidor-servidor.
e) Arquitetura cliente-servidor. 
2. Assinale a opção que completa corretamente a afirmação a seguir: Entende-se por sistema de 
informação distribuído um sistema no qual vários programas, em diferentes computadores, 
trabalham, para se obter resultados desejadospelos usuários, de forma... 
a) Isolada e independente.
b) Isolada e coordenada.
c) Coordenada e independente.
d) Colaborativa e coordenada.
e) Competitiva e independente.
1.6 Atividades Propostas
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
21
3. Assinale a opção que completa corretamente a afirmação a seguir: Em relação ao uso de sis-
temas de informação distribuídos, a internet constitui um ambiente...
a) Favorável.
b) Nocivo.
c) Desfavorável.
d) Neutro.
e) Incompatível.
Unisa | Educação a Distância | www.unisa.br
23
Caro(a) aluno(a), o desenvolvimento de sis-
temas de informação distribuídos para internet 
foi significativamente facilitado pela disponibili-
zação de linguagens como:
ƒƒ Hyper Text Markup Language (HTML);
DESENVOLVIMENTO2
ƒƒ Asynchronous Server Pages (ASP);
ƒƒ Java Server Pages (JSP);
ƒƒ PHP;
ƒƒ JavaScript.
O código criado por meio das instruções 
(tags) da linguagem HTML permite descrever 
uma janela em termos de:
ƒƒ textos que nela aparecem;
ƒƒ posicionamento de tais textos; 
ƒƒ características das letras como tipo, ta-
manho e cor;
ƒƒ exibição de dados em forma de tabelas;
ƒƒ inserção de imagens e figuras;
ƒƒ campos para entrada de dados;
2.2 HTML, JavaScript e Navegador (Browser)
2.1 Ambientes e Linguagens de Programação
ƒƒ inserção de objetos gráficos como bo-
tões de rádio, teclas etc.;
ƒƒ encadeamento de janelas;
ƒƒ assim por diante.
Quando tal código é processado por um 
programa do tipo browser, como o Internet Ex-
plorer ou o Mozilla, executando numa estação de 
trabalho, a janela descrita no código é exibida no 
monitor (Figura 17).
Figura 17 – Processamento do navegador.
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
24
Seja, por exemplo, o código escrito em 
HTML a seguir:
Quando esse conjunto de instruções é proces-
sado por um browser, caro(a) aluno(a), aparecerá no 
monitor a janela da Figura 18:
Figura 18 – Janela descrita por código HTML.
Suponha que, ao visualizar a janela da Figu-
ra 18, o usuário digite o valor 4 na caixa que segue 
o texto “Campo A:”.
Ao “clicar” no botão “Enviar”, o valor 4 será 
recebido pelo browser e este transferirá o valor 
para o TCP/IP da estação de trabalho, que vai en-
caminhá-lo para o programa do tipo servidor web 
<html><body>
<form action=http: // 10 .240 .180 .180 / produto.asp 
method=“ GET ”>
Campo A: <input type=‘text’ name=‘campo1’>
<br><input type=‘submit’ value=‘Enviar’>
</form></body></html>
<form action=http: //10 .240 .180 .180 / produto.asp 
method=“ GET ”>
(web server) que executa no computador de en-
dereço IP 10.240.180.180, onde será processado o 
código contido no arquivo “produto.asp”, confor-
me informado na tag:
Desse modo, caro(a) aluno(a), a camada de 
apresentação de um sistema de informação dis-
tribuído para internet pode ser implementada 
usando um browser em cada estação de trabalho 
para processar o código HTML adequado a cada 
necessidade de interação entre sistema e usuário.
Caso necessite validar os dados recebidos 
do usuário, pode, por exemplo, fazer isso adicio-
nando às tags HTML instruções na linguagem 
JavaScript, que também serão processadas pelo 
navegador.
Assim, consegue-se um aumento de pro-
dutividade no desenvolvimento dos sistemas, 
tornando-os disponíveis mais rapidamente.
Saiba maisSaiba mais
O programador, ao invés da tarefa trabalhosa de co-
dificar programas do tipo cliente usando uma lingua-
gem de programação normal como o Java, executará 
a atividade mais simples de produzir as tags HTML. 
2.3 Servidor Web (Web Server)
Para implementar a camada de negócio de 
um sistema de informação distribuído para inter-
net, pode-se usar um programa do tipo servidor 
web que processará o código desenvolvido na lin-
guagem correspondente.
Assim, por exemplo, se a linguagem é PHP, 
deve-se usar o servidor web Apache.
A linguagem JSP se encontra associada ao 
servidor web Apache Tomcat.
No caso da linguagem ASP, deve-se empre-
gar o servidor web Internet Information Services 
(IIS).
Retomemos o exemplo iniciado no item an-
terior.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
25
Caro(a) aluno(a), vimos que o valor 4 digi-
tado pelo usuário na estação de trabalho deve 
ser processado pelo código contido no arquivo 
“produto.asp”, o que é informado por meio da tag 
HTML:
O conteúdo do arquivo “produto.asp” é:
O arquivo se encontra num diretório aces-
sado pelo IIS, que processará as instruções da se-
guinte maneira:
ƒƒ o valor 4 recebido pelo IIS é armaze-
nado na variável Valor, em função da 
execução da instrução: Valor=request.
querystring(“campo1”); 
ƒƒ o conteúdo da variável Valor é multi-
plicado por 3 e o produto resultante, 
12, é armazenado na variável Produto, 
em função da execução da instrução: 
Produto=Valor*3;
<form action=http : //10 .240 .180 .180 / produto.asp 
method=“ GET “>
<% Valor=request.querystring(“campo1”)
Produto=Valor*3
Response.write(Produto) %> 
AtençãoAtenção
Como o sufixo do arquivo é “.asp”, sabe-se que a 
linguagem usada foi ASP e o código será proces-
sado pelo servidor WEB IIS que executa no com-
putador de endereço IP 10.240.180.180.
ƒƒ em função da execução da instrução: 
Response.write(Produto), é gerado um 
conjunto de tags HTML que descreve 
uma janela exibindo o valor 12, conteú-
do da variável Produto. O conjunto de 
tags é enviado para o browser da esta-
ção de trabalho, que o processa fazen-
do com que a janela contendo o resul-
tado seja exibida para o usuário (Figura 
19).
Figura 19 – Resultado exibido ao usuário.
Desse modo, caro(a) aluno(a), a camada de 
negócio de um sistema de informação distribuído 
para internet pode ser implementada usando um 
programa servidor web.
O programador, ao invés da tarefa traba-
lhosa de codificar programas do tipo servidor 
usando uma linguagem de programação normal 
como o Java, executará a atividade mais simples 
de produzir o código na linguagem adequada ao 
servidor web utilizado.
Assim, consegue-se um aumento de pro-
dutividade no desenvolvimento dos sistemas, 
tornando-os disponíveis mais rapidamente. 
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
26
A seguir, será mostrado o fluxo de um siste-
ma de informação distribuído para internet usan-
do o browser, o servidor web e um SGBD (camada 
de dados) ao invés de programa cliente específi-
co, programa servidor específico e SGBD.
No caso deste exemplo, considera-se que, 
no início do fluxo, o usuário, por meio do coman-
do: http://www..., digitado na barra de comando 
da janela do navegador, faz com que o navegador 
peça ao TCP/IP que este envie mensagem 1 para 
o servidor web, que executa no site fornecido no 
2.4 Fluxo Conceitual Detalhado
comando http://www..., requerendo que o servi-
dor web transmita ao navegador arquivo HTML, 
contendo as tags que descrevem a janela 1 de um 
serviço desejado (Figura 20).
O servidor web, caro(a) aluno(a), ao receber 
a mensagem 1 do navegador, acessa o diretório 
onde se encontra o arquivo HTML solicitado, cria 
resposta 1 contendo cópia do arquivo HTML so-
licitado e pede ao TCP/IP que envie a resposta 1 
para o navegador (Figura 21).
Figura 20 – Comando http:.
Figura 21 – Resposta 1 contendo arquivo HTML.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
27
Caro(a) aluno(a), o navegador, ao receber o 
arquivo HTML contido em resposta 1, efetua a in-
terpretação das tags e exibe a janela 1 correspon-
dente no monitor da estação de trabalho.
Também guarda as informações referentes 
ao nome do código a ser ativado pelo servidor 
web associado à porta e endereço IP, menciona-
dos na tag <form...> do arquivo HTML.
Tal código processará os dados que o usuá-
rio fornecerá a partir da janela 1 (Figura 22).
Figura 22 – Janela 1.
O usuário fornece os dados solicitados em 
janela 1 para a execução do serviço.
O navegador, ao receber tais dados, pede 
ao TCP/IPque envie, através da mensagem 2, os 
dados, acompanhados do nome do código que 
deverá processá-los, para o servidor web que exe-
cuta na porta do endereço IP mencionado na tag 
<form...> do HTML (Figura 23).
Figura 23 – Mensagem 2.
O servidor web recebe a mensagem 2, que 
contém os dados e o nome do código que deve 
processá-los, e executa o código mencionado (Fi-
gura 24).
Figura 24 – Recepção da mensagem 2 pelo servidor 
web.
Caro(a) aluno(a), o programa servidor de 
dados em geral corresponde a um SGBD e, muitas 
vezes, se encontra em outro computador.
Nessa situação, o servidor web, ao ser infor-
mado e requisitado pelo código, solicita ao TCP/
IP do seu computador que envie a mensagem 3 
contendo:
ƒƒ o endereço IP do computador origem 
da mensagem;
ƒƒ a porta do TCP/IP do computador cor-
respondente ao servidor web;
ƒƒ o endereço IP do computador onde 
executa o SGBD; 
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao SGBD;
AtençãoAtenção
O código executado sob o servidor web come-
ça a processar os dados. Ao efetuar essa tarefa, 
costumeiramente, necessita solicitar dados, pre-
viamente armazenados em bases de dados, para 
um programa do tipo servidor de dados.
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
28
ƒƒ os argumentos de pesquisa que o SGBD 
precisa para obter, na base de dados, as 
informações que o código, no servidor 
web, precisa (Figura 25).
Figura 25 – Mensagem 3.
O SGBD recebe a mensagem 3 e, com base 
nos argumentos de pesquisa nela contidos, aces-
sa a base de dados e obtém as informações de 
que o programa servidor necessita.
Aí, caro(a) aluno(a), solicita ao TCP/IP do seu 
computador que envie uma mensagem conten-
do:
ƒƒ o endereço IP do seu computador;
ƒƒ a porta do TCP/IP do seu computador 
que o SGBD usa;
ƒƒ o endereço IP do computador onde 
executa o programa servidor web; 
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao programa 
servidor web;
ƒƒ os dados solicitados pelo programa ser-
vidor web.
O TCP/IP do computador do SGBD envia, 
por meio da web, a resposta 3 para o programa 
TCP/IP do computador onde executa, permanen-
temente, o programa servidor web; tal TCP/IP en-
trega a resposta 3 para o programa servidor web 
(Figura 26).
Figura 26 – Recepção da resposta 3.
O programa servidor web recebe a resposta 
3 e repassa os dados nela contidos para o código, 
que completa seu processamento, obtendo o re-
sultado; o resultado é formatado como um con-
junto de tags HTML. 
Aí, caro(a) aluno(a), solicita ao TCP/IP do seu 
computador que envie uma mensagem conten-
do:
ƒƒ o endereço IP do seu computador;
ƒƒ a porta do TCP/IP do seu computador 
que o programa servidor web usa;
ƒƒ o endereço IP da estação de trabalho 
onde executa o programa navegador;
ƒƒ a porta do TCP/IP, no computador de 
destino, correspondente ao programa 
navegador;
ƒƒ o resultado solicitado pelo programa 
navegador sob a forma de um conjunto 
de tags HTML.
O TCP/IP do computador do programa ser-
vidor web envia, por meio da web, a resposta 2 
para o programa TCP/IP da estação de trabalho 
onde executa o programa navegador; tal TCP/IP 
entrega a resposta 2 para o programa navegador 
(Figura 27).
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
29
Figura 27 – Recepção da resposta 2.
Caro(a) aluno(a), o programa navegador re-
cebe a resposta 2 contendo o resultado formata-
do por meio de um conjunto de tags HTML, pro-
cessa as tags HTML e apresenta a janela 2 com o 
resultado no monitor da estação de trabalho para 
o usuário (Figura 28).
Figura 28 – Janela 2.
Como foi visto, num sistema de informação 
distribuído no ambiente da internet, o resultado 
desejado pelo usuário pode ser obtido de manei-
ra mais fácil pelo funcionamento colaborativo e 
coordenado de programas do tipo navegador, 
processando tags HTML, de programas do tipo 
servidor web, ativando códigos sob seu controle, 
e de programas do tipo servidor de dados, que 
executam em diferentes computadores.
Com base no que foi descrito, em relação à 
arquitetura em camadas, pode-se concluir que:
ƒƒ o programa do tipo navegador, que 
processa tags HTML, implementa a ca-
mada de apresentação;
ƒƒ o programa do tipo servidor web, que 
ativa códigos sob seu controle, imple-
menta a camada de negócio;
ƒƒ o programa do tipo servidor de dados 
implementa a camada de dados.
Ainda com base no que foi descrito, em re-
lação à arquitetura cliente-servidor, pode-se con-
cluir que:
ƒƒ o programa navegador é cliente do pro-
grama servidor web: envia-lhe mensa-
gens e recebe respostas dele;
ƒƒ o programa servidor web é servidor do 
navegador e cliente do programa ser-
vidor de dados: envia mensagens ao 
SGBD e recebe respostas dele;
ƒƒ o SGBD é servidor do programa servi-
dor web.
Itsche Baran
Unisa | Educação a Distância | www.unisa.br
30
Este capítulo mostrou que a camada de apresentação pode ser desenvolvida e implementada de 
forma menos trabalhosa por meio do uso conjunto de softwares, como:
ƒƒ linguagem Hyper Text Markup Language (HTML);
ƒƒ linguagem JavaScript;
ƒƒ navegador (browser).
Também foi explicado que a camada de negócio pode ser desenvolvida e implementada de forma 
menos trabalhosa por meio de diversas alternativas.
Uma delas corresponde ao uso conjunto de:
ƒƒ linguagem PHP;
ƒƒ servidor web Apache.
Outra opção é utilizar:
ƒƒ linguagem Java Server Page (JSP).
ƒƒ servidor web Apache Tomcat.
Pode-se ainda empregar:
ƒƒ linguagem Asynchronous Server Page (ASP);
ƒƒ servidor web Internet Information Service (IIS).
Finalizando, foi apresentado o fluxo detalhado de uma solução implementada por meio de tais 
recursos.
2.5 Resumo do Capítulo
2.6 Atividades Propostas
Vamos, agora, avaliar a sua aprendizagem, efetuando as atividades a seguir.
1. Assinale a afirmação incorreta:
a) Apache é o nome de um servidor web.
b) HTML é o nome de uma linguagem.
c) JavaScript é o nome de um browser.
Sistemas de Informação Distribuídos para Internet I
Unisa | Educação a Distância | www.unisa.br
31
d) ASP é o nome de uma linguagem.
e) IIS é o nome de um servidor web.
2. Em relação ao HTML, assinale a afirmação correta:
a) HTML é uma linguagem.
b) HTML é um comando do Windows.
c) HTML é um comando do Linux.
d) HTML é um comando do UNIX.
e) HTML é o nome de um sistema gerenciador de banco de dados.
3. Assinale a opção que completa corretamente a afirmação a seguir: Uma funcionalidade da 
camada de apresentação pode ser implementada usando...
a) HTML e SGBD.
b) HTML e web server.
c) HTML e UNIX.
d) HTML e Linux.
e) HTML e browser.
Unisa | Educação a Distância | www.unisa.br
33
Neste curso, caro(a) aluno(a), foram abordados conceitos básicos referentes a sistemas de informa-
ção distribuídos para internet e aos componentes de software que os constituem.
Os conceitos apresentados envolvem as características:
ƒƒ da arquitetura em camadas, frequentemente usada em projetos dessa espécie; 
ƒƒ das camadas de apresentação, negócio, dados e comunicação;
ƒƒ da arquitetura cliente-servidor, também presente em projetos dessa espécie;
ƒƒ da atuação de um programa como cliente ou servidor. 
Também foram tratados os diferentes tipos de programas que implementam um sistema de infor-
mação distribuído para internet de modo a obedecer às arquiteturas mencionadas.
Foi detalhado o fluxo de execução coordenada e colaborativa de tais programas.
Foi apresentado um conjunto de recursos de software que possibilita o aumento da produtividade 
no desenvolvimento de tais sistemas.
CONSIDERAÇÕES FINAIS3
Unisa | Educação a Distância | www.unisa.br
35
CAPíTULO 1
1. A opção correta é a “E”, porque a arquitetura cliente-servidor é a única arquitetura com tal 
nome mencionada nesta apostila.
2. A opção correta é a “D”, porque o funcionamento dos programas no caso de sistemas distribuí-
dos ocorre de maneira colaborativa e coordenada, conforme descrito nesta apostila.
3. A opção correta é a “A”, porque,pelas suas características, a internet possibilita naturalmente a 
execução colaborativa e coordenada de programas, graças, por exemplo, ao apoio de softwa-
res como o browser e a implementação do TCP/IP.
CAPíTULO 2
1. A opção certa é a “C”, pois é incorreto afirmar que JavaScript é o nome de um browser, pois se 
trata de uma linguagem.
2. A opção correta é a “A”, pois HTML é uma linguagem.
3. A opção correta é a “E”, pois o uso combinado do browser e da linguagem HTML permite de-
senvolver e implementar uma funcionalidade da camada de apresentação com grande efi-
ciência.
RESPOSTAS COMENTADAS DAS 
ATIVIDADES PROPOSTAS
Unisa | Educação a Distância | www.unisa.br
37
CARDOSO, M. Desenvolvimento web para o ensino superior. Rio de Janeiro: Axcel Books do Brasil, 
2004.
MARCELO, M. S. Construindo sites adotando padrões web. Rio de Janeiro: Ciência Moderna, 2004.
MARCONDES, C. A. Programando em HTML. 5. ed. São Paulo: Érica, 2004.
MURHAMMER, M. W. et al. TCP/IP tutorial and technical overview. USA: IBM, 1998.
NETO, O. M. Entendendo e dominando o Java para internet. São Paulo: Digerati Books, 2006.
TANENBAUM, A. S. Computer networks. 3. ed. USA: Prentice Hall, 1996.
TANENBAUM, A. S.; STEEN, M. V. Sistemas distribuídos. 2. ed. São Paulo: Editora Pearson, 2008.
REFERÊNCIAS
	INTRODUÇÃO
	1
	CONCEITOS INICIAIS
	1.3 Arquiteturas Utilizadas
	1.4 Fluxo Conceitual Detalhado
	1.5 Resumo do Capítulo
	1.6 Atividades Propostas
	2
	DESENVOLVIMENTO
	2.3 Servidor Web (Web Server)
	2.4 Fluxo Conceitual Detalhado
	2.5 Resumo do Capítulo
	2.6 Atividades Propostas
	3
	CONSIDERAÇÕES FINAIS
	RESPOSTAS COMENTADAS DAS ATIVIDADES PROPOSTAS
	REFERÊNCIAS

Continue navegando