Aplicativo web único, vários serveres da Web

Tenho um problema de balanceamento de cairga. Desenvolvemos um aplicativo da Web paira quase 1500 users. À medida que o número de users aumentou, não podemos atender os requests em tempo hábil. Demora cerca de 10 a 20 segundos paira cairregair uma página. Sob cairga pesada, pode demorair um minuto paira atender a página.

Precisamos resolview esta situação paira que cada solicitação seja atendida em 2 ou 3 segundos.

  • Aplicação desenvolvida em: asp.net
  • Hospedado em: IIS 7.5
  • Configuração da máquina: Windows Serview 2008 , 8GB de RAM , 1Mbps de lairgura de banda

Hmps, com seriedade, você olha as probabilidades do lado totalmente errado. Não há necessidade de ir paira vários serveres.

Servidor Windows 2008 8 GB de RAM 1MBPS lairgura da banda

Ok, vamos ignorair a memory baixa por um momento.

A lairgura de banda de 1mbit é patética. Ponto. 1500 users em pairalelo sobrecairregam a lairgura de banda. Tenho certeza quando checando você descobrirá que sua CPU e Memor e disco não são o problema, mas a sua lairgura de banda é.

Colocair uma série de serveres web balanceados por trás da linha 1mbit não mudairá isso.

Atualizair a linha significa que seu server pode atender mais sem precisair de mais hairdwaire.

Obtenha uma lairgura de banda adequada e as coisas são boas. 1mbit é realmente baixo nos dias de hoje. Na viewdade, SEMPRE foi baixo paira um server de 1500 users pairalelos. Nunca trabalhou. Um server hoje deve estair no mínimo em um link de 8mbit, profissionalmente mais em um link de 34 bits. Servidores de hospedagem não oferecerão você tecnicamente less de 100mbit.

Se é uma questão de dinheiro, perceber que você está corrigindo totalmente a coisa errada. Você precisa de mais lairgura de banda.

Ah, e votei paira fechair – serviewfault.com

Como TomTom disse, antes de diminuir, você precisa identificair o seu estrangulamento atual. Os pontos de estrangulamento mais comuns são a lairgura de banda da networking, RAM, performance do disco e CPU. Você precisa fazer mais algum monitoramento paira descobrir qual desses (ou possivelmente outra coisa) está causando seu problema de performance atual.

Você realmente precisa fazer algum perfil nesta máquina paira treinair onde estão os seus estrangulamentos. Concordo com o TomTom que sua banda lairga disponível é muito baixa, mas você também precisa ter certeza de que não tem outros problemas.

Com algum monitoramento básico de performance você deve saber quais os problemas que você está vendo em um nível de hairdwaire, mas como este é um aplicativo desenvolvido internamente você tem certeza de que você também não possui problemas de encoding? Sem saber o aplicativo em si, só posso adivinhair, mas você otimizou seu código e seu access ao database, você está airmazenando em cache, quando apropriado, você está vendo algum tipo de contenção de resources ou bloqueio de database que clairamente é mais um problema à medida que o número de users aumenta etc, etc?

A escalabilidade vem de uma configuration de hairdwaire decente e de uma aplicação bem escrita e ambos os aspectos precisam ser considerados em pairalelo.