next up previous contents
Next: Serviços Up: Desenvolvimento Previous: Base   Conteúdo

Servidores

Os servidores que armazenam todo o núcleo do sistema utilizam o sistema operacional Linux distribuição Slackware. O Linux evoluiu de tal forma que se tornou um sistema operacional perfeitamente adequado mesmo até para sistemas de grande porte e que recebem milhares de requisições por dia.

A estruturação e configuração dos servidores demandou muita interação entre equipe, pois como cada módulo do sistema estava sendo feito por uma pessoa diferente, foi necessário que interagíssemos de forma a atender todos os subsistemas satisfatoriamente. Ilustrando: número máximo de arquivos abertos permitidos pelo sistema. Os valores-padrão que vêm com o código-fonte do Linux são muito baixos para serem utilizados num servidor de até mesmo de porte médio.

No início, tivemos de pesquisar um modo de balancear o processamento e a requisição em cada servidor que constituía a rede, pois no sistema antigo havia muitos sites que recebiam muitas requisições em relação a outros de outros servidores que quase não eram acessados. Para tanto, pesquisamos um modo de minimizar essa discrepância de servidor para servidor. Uma das opções pesquisadas foi o MOSIX2.3, basicamente para balancear a carga e com um mínimo de overhead. Por fim, percebemos que a viabilidade desse sistema não era adequada às nossas necessidades, além de que a manutenção do mesmo não seria trivial e, então, um outro método acabou sendo utilizado, utilizando-se um outro tipo de hardware.

Nesta fase pude aprender muito sobre como o sistema operacional trata as requisições de rede, ou seja, os processos pelos quais um pacote passa desde a sua chegada na máquina até ser entregue a um processo e vice-versa. Foi muito interessante o aprendizado sobre esse processo, toda a documentação necessária foi retirada de alguns livros como o utilizado na disciplina MAC4482.4:Computer Networking: A Top-Down Approach Featuring the Internet [1] e a maior parte de documentos na Internet - HOWTOs - e manuais online, as manpages. Os EPs da disciplina também auxiliaram muito no entendimento de protocolos de rede e também para a criação de programas utilizados pelo sistema e para testes cotidianos.

O núcleo do sistema consiste dos programas utilizados como back-end para alterar o estado de uma conta de usuário, adicionar serviços àquela conta, etc. Dentre outras, as linguagens utilizadas para implementar a maioria destes programas foram PHP e bash.


next up previous contents
Next: Serviços Up: Desenvolvimento Previous: Base   Conteúdo
Jeferson Roberto Marques 2000-12-20