Pular para o conteúdo principal

Questão de Redes de Computadores — Arquitetura Cliente-Servidor — VUNESP 2024

Redes de ComputadoresArquitetura Cliente-Servidor
Código
vu212318
Banca
VUNESP
Órgão
Pref Piracicaba
Ano
2024
Cargo
Adm ( )

Alguns servidores de bancos de dados oferecem a possibilidade de serem acessados via named pipes.

 

Essa forma de conexão é baseada

  1. Ana pilha de protocolos TCP/IP.
  2. Bem um método de comunicação interprocessos que se assemelha a leitura e escrita de arquivos.
  3. Cno acesso direto, pela aplicação que acessa o banco de dados, aos arquivos de dados mantidos pelo servidor de banco de dados.
  4. Dna troca de arquivos no formato XML, que contêm requisições e respostas.
  5. Ena troca de arquivos no formato JSON, que contêm requisições e respostas.
Revelar gabarito e comentário

GabaritoB — em um método de comunicação interprocessos que se assemelha a leitura e escrita de arquivos.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Named Pipes: comunicação entre processos

Gabarito: letra B. Named pipes (ou pipes nomeados) são um mecanismo de comunicação interprocessos (IPC) que permite a troca de dados entre processos de forma semelhante à leitura e escrita em arquivos — é exatamente essa a definição que a alternativa B espelha. Essa forma de conexão não depende da pilha TCP/IP, nem do acesso direto aos arquivos do banco, nem de formatos como XML ou JSON.

O que são named pipes?

Named pipes são um dos mecanismos clássicos de comunicação interprocessos (IPC). Enquanto um pipe anônimo (unnamed pipe) conecta apenas processos com relação de parentesco (por exemplo, um processo pai e seu filho), um named pipe cria um canal de comunicação identificado por um nome no sistema de arquivos, permitindo que processos independentes — possivelmente em máquinas diferentes, em alguns sistemas — troquem dados.

A grande sacada dos named pipes é que a interface de programação é idêntica à de arquivos: o processo usa funções como open, read, write e close para se comunicar. Por isso, diz-se que a comunicação "se assemelha a leitura e escrita de arquivos". O sistema operacional cuida do buffer e da sincronização entre o produtor e o consumidor dos dados.

Como funciona na prática?

Imagine um servidor de banco de dados que aceita conexões via named pipe. O cliente, em vez de abrir um socket TCP/IP, abre um "arquivo especial" (o named pipe) e escreve nele a requisição SQL. O servidor lê desse mesmo pipe a requisição, processa e escreve a resposta de volta no pipe, que o cliente lê como se fosse um arquivo. Todo o transporte é feito pelo sistema operacional, sem passar pela pilha de protocolos de rede.

Distinção importante: named pipes × sockets TCP/IP

A confusão mais comum é achar que toda comunicação cliente-servidor usa TCP/IP. Não é verdade. Sockets TCP/IP são apenas um dos mecanismos de comunicação. Named pipes são outra alternativa, usada principalmente em ambientes locais (mesma máquina ou rede Windows) por serem mais rápidos e simples de implementar, já que não exigem configuração de endereços IP ou portas.

Critério

Named Pipes

Sockets TCP/IP

Mecanismo

IPC via sistema de arquivos

Protocolo de rede

Interface

Leitura/escrita de arquivos

API de sockets

Dependência de rede

Não (em geral, local)

Sim

Configuração

Nome do pipe

IP + porta

A pegadinha da banca

A banca explora exatamente a confusão entre "comunicação via rede" e "comunicação via arquivos". As alternativas C, D e E tentam induzir o candidato a pensar que a comunicação é feita por acesso direto a arquivos de dados ou por troca de arquivos estruturados (XML/JSON), o que não é o caso. A alternativa A tenta atrair quem acha que toda comunicação usa TCP/IP.

NÃO CAIA NESSA!

A banca troca o mecanismo de comunicação: named pipes são IPC via sistema de arquivos, não via pilha TCP/IP nem via troca de arquivos XML/JSON. O candidato que confunde "comunicação entre processos" com "comunicação via rede" cai na alternativa A. Lembre-se: named pipe = leitura/escrita de arquivo, não socket.

1Mecanismo de IPC
Comunicação entre processos
Interface de arquivos (open/read/write)
2Características
Não usa TCP/IP
Não acessa arquivos do banco
Não usa XML/JSON
3Uso típico
Ambiente local
Mais rápido que socket
Named pipes
LEVELsoulevel.com.br
Named pipes: Mecanismo de IPC (Comunicação entre processos, Interface de arquivos (open/read/write)); Características (Não usa TCP/IP, Não acessa arquivos do banco, Não usa XML/JSON); Uso típico (Ambiente local, Mais rápido que socket)

Alternativa A — ❌ Incorreta

Afirma que a conexão via named pipes é baseada na pilha de protocolos TCP/IP. Isso é falso: named pipes são um mecanismo de comunicação interprocessos que não depende de TCP/IP. Eles operam no nível do sistema operacional, usando o sistema de arquivos como canal, e não utilizam endereços IP nem portas.

Alternativa B — ✅ Correta ⟵ GABARITO

Esta é a definição correta. Named pipes são um método de comunicação interprocessos que se assemelha à leitura e escrita de arquivos. O processo cliente abre o pipe como se fosse um arquivo, escreve a requisição, e o servidor lê do mesmo pipe — tudo com a interface padrão de arquivos do sistema operacional.

Alternativa C — ❌ Incorreta

Afirma que a conexão é feita pelo acesso direto da aplicação aos arquivos de dados mantidos pelo servidor. Isso é incorreto: o cliente não acessa diretamente os arquivos do banco de dados. Ele se comunica com o servidor através do named pipe, e é o servidor quem gerencia o acesso aos dados. O pipe é apenas o canal de comunicação, não o arquivo de dados em si.

Alternativa D — ❌ Incorreta

Afirma que a conexão é baseada na troca de arquivos no formato XML contendo requisições e respostas. Isso é falso: named pipes não têm relação com formatos de dados como XML. O pipe transporta bytes brutos, e o formato dos dados é definido pela aplicação, não pelo mecanismo de comunicação.

Alternativa E — ❌ Incorreta

Afirma que a conexão é baseada na troca de arquivos no formato JSON contendo requisições e respostas. Assim como a alternativa D, isso é falso: named pipes não dependem de formatos de dados como JSON. O pipe é um canal de comunicação genérico, e o formato dos dados é uma decisão da aplicação, não do mecanismo de transporte.

Gabarito: letra B — named pipes são um método de comunicação interprocessos que se assemelha à leitura e escrita de arquivos.

Link permanente: /questoes/vu212318