Balanceamento Dinâmico de Requisições em Cluster de Servidores Web
Resumo
Informações provenientes de movimentações bancárias, transações comerciais, pesquisas educacionais, bate-papo e jogos interativos, entre outros, têm crescido intensamente na Internet. Os provedores de serviços precisam estar preparados para sustentar esta demanda crescente de informação e comunicação. Neste sentido, a distribuição de requisições entre vários servidores web de forma balanceada tem se tornado uma estratégia f undamental para garantir melhor qualidade no serviço. O presente trabalho descreve e discute questões arquiteturais e operacionais sobre o balanceamento de requisições, principalmente o dinâmico, abordando conceitos, técnicas e soluções. Experimentos reais foram realizados em diferentes configurações sobre um cluster de servidores Apache não dedicado exclusivamente ao serviço web. O módulo de balanceamento de carga mod_proxy_balancer foi usado com sobrecargas sintéticas intensivas e um novo método de balanceamento chamado byquery foi proposto e avaliado. Os resultados mostram que o balanceamento neste tipo de sistema será mais eficiente se a carga de rede externa ao serviço web for detectada e usada no fator de balanceamento.
Referências
Aversa, L. and Bestavros, A. "Load balancing a cluster of Web servers using Distributed Packet Rewriting". In Proceedings of the 19th IEEE lnternational Performance, Computing, and Communication Conference. IEEE Computer, 2000.
Cardellini, V., Colajanni, M., ANO YU, P. S. "Dynamic load balancing on Web-server systems". IEEE Internet Computing, 3, p. 28-39, 1999.
Iyengar, A. et ai, P. "High performance Web site design techniques" IBM Thomas J. Watson Res. Center, Yorktown Heights, NY, Mar/Apr 2000.
Marwah, M., Mishra, S. and Fetzer, C. "Fault-Tolerant and Scalable TCP Splice and Web Server Architecture". Technical Report. Department of Computer Science, University of Colorado, Boulder.
Schroeder, T., Goddard, S. and Ramamurthy, B. "Scalable Web Server Clustering Technologies". IEEE Network, p. 38-45, may 2000.
Linux Virtual Server Project "Linux Virtual Server Documentation" Disponível em: http://www.linuxvirtualserver.org. Acessado em 02 de maio de 2006. CO. Number: CU-CS-1003-06, jan 2006.
Netcraft. "Web Server Survey". Disponível em: http://news.netcraft.com. Acessado em 20 de março 2006.
Mockus, A., R. Fielding, and J. Herbsleb. "A Case Study of Open Source Software Development: The Apache Server". In Proceedings of International Conference on Software Engineering, 2000.
ApacheBench. "AB-Apache HTTP server benchmarking tool". http://httpd.apache.org/docs/2.2/programs/ab.html, 2006.
Poskanzer, Jef. "Http load - muitiprocessing http test client", http://www.acme.com/software/http_load/.
Mosberger, D. and Jin, T. "httperf: A tool for measuring Web server performance", Workshop on Internet Server Performance. ACM, p. 59-67, 1998.
Sysstat. "Sysstat". Disponível em http://perso.orange.fr/sebastien.godard/. Acessado em 01 de agosto de 2007.