32 bits ou 64 bits para sites do Windows Azure?

13

Os sites do Windows Azure oferecem duas opções de 32 bits ou 64 bits. Novos sites vêm com 32 bits por padrão. Para uma configuração de servidor, é um pouco estranho, porque, AFAIK, a grande maioria dos servidores da Web está na configuração de 64 bits há anos. Considerando os casos de uso usuais para sites ASP.NET, existem motivos para favorecer 32 bits a 64 bits?

Joannes Vermorel
fonte

Respostas:

4

Depende da sua carga de trabalho.

O IIS + .NET no x64 é excelente e pode suportar cargas de trabalho muito grandes. Se você carregar o teste, verá que os servidores x64 com CPU e RAM suficientes superam o x86 em uma medida saudável.

Se sua carga de trabalho for pequena e / ou você quiser balancear vários servidores, é possível que você ache que o x86 está bom. (Eu acredito muito no uso das menores instâncias possíveis para a carga de trabalho - grande parte da TI está jogando metal no problema e é um desperdício. O x86 é bonito. Infelizmente, está ficando mais difícil obter instâncias do x86.)

No nosso caso, balanceamos vários servidores x64. No entanto, durante as operações de implantação, toda ou a maior parte da carga pode ser direcionada para um único servidor. No nosso caso, se esse servidor fosse x86, seria estressado e muito lento. Como é x64, ele pode lidar com a carga e os usuários não percebem.

Jonesome Restabelecer Monica
fonte
Eu aprendi recentemente que o coletor de lixo bloqueia todos os threads durante o processo, causando maior latência às vezes. Depois de habilitar o 64-bit, o coletor de lixo agirá com menos frequência, melhorando o desempenho do seu aplicativo.
Tom
3

A resposta é - é complicado. É simples se seu aplicativo requer acesso a muitos GBs de RAM (a maioria dos aplicativos não), então você deve ter 64 bits.

Caso contrário, apenas testar seu aplicativo específico em 32 bits e 64 bits pode lhe garantir, e isso depende do que é mais importante para você, espaço na memória ou desempenho da CPU. Lembre-se, se você ficar sem memória, em seguida, seu aplicativo será ou página para o disco e dizer bye-bye (de uma forma huuuuuge) a qualquer ganho de desempenho que você pode ter começado a partir de mudar para 64 bits, ou o seu dimensionamento automático vai chutar e você vai será cobrado mais dinheiro pelo Azure pelas instâncias de servidor adicionadas ou você começará a receber erros OutOfMemory que terminam o jogo para seu aplicativo.

Consulte também: https://www.hanselman.com/blog/PennyPinchingInTheCloudYourWebAppDoesntNeed64bit.aspx

Harlow Burgess
fonte
1

Vá 32 bits, a menos que você precise de um espaço de endereço de 64 bits - o que é raro em um site normal.

O motivo é simplesmente que os sites normalmente não precisam do espaço de endereço e os programas de 32 bi são executados mais rapidamente.

Agora você diz:

a grande maioria dos servidores web está na configuração de 64 bits há anos

Sim mas:

A configuração padrão para um pool de aplicativos IIS é iniciar no modo de 32 bits - por motivos de compatibilidade e desempenho. O conselho da Microsoft para a configuração do IIS é usar pools de aplicativos de 32 bits em um servidor de 64 bits.

Verifica:

http://www.iis.net/learn/web-hosting/web-server-for-shared-hosting/32-bit-mode-worker-processes

para a declaração oficial.

Você pode ter certeza de que ele será executado em um servidor de 64 bits, pois não há oferta de produção atual de 32 bits da microsoft. Mas, a menos que você precise de quantidades maiores de RAM, o impacto no desempenho não vale a pena.

TomTom
fonte
"A configuração padrão para um pool de aplicativos IIS é iniciar no modo de 32 bits" Isso não ocorre há algum tempo. O IIS é sempre x64 no sistema operacional x64 Server e requer hackers para obter 32 bits.
Jonesome Reinstate Monica
1
"Programas de 32 bits rodam mais rápido." isso não é verdade globalmente.
Xaxxon