Skip to content
This repository has been archived by the owner on Mar 24, 2023. It is now read-only.

Implementação parcial de um servidor Web que lida com mensagens HTTP.

License

Notifications You must be signed in to change notification settings

juliorodrigues07/web_server_c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C99

Mini-Servidor Web

Implementação parcial de um servidor Web utilizando 4 técnicas distintas de programação com sockets. O servidor lida com mensagens HTTP (parser) apenas com o método GET, utilizando o protocolo TCP na camada de transporte (Trabalho Prático 2 da disciplina de Redes de Computadores I - DCOMP - UFSJ).

Requisitos

  • Ferramenta Siege

     sudo apt install siege -y
    

Compilação

   make

Execução

  • Servidor Iterativo:

    make iterative
    
  • Servidor Fork:

    make fork
    
  • Servidor Thread:

    make thread
    
  • Servidor Concorrente:

    make concurrent
    

Benchmark Siege

  • Formato de execução geral:

    siege -t<tempo em segundos>S -c<número de clientes simultâneos> http://localhost:<número da porta>/<nome do arquivo>

  • Exemplo:

    siege -t10S -c128 http://localhost:2000/cat.jpg
    

Browser

  • Formato de pesquisa geral:

    http://127.0.0.1:<número da porta>/<nome do arquivo>

  • Exemplo:

    http://127.0.0.1:2000/index.html