32 біт або 64 біт для веб-сайтів Windows Azure?


14

У Windows Azure веб - сайтів пропонує два варіанти 32bits або 64bits. Нові сайти за замовчуванням мають 32 біти. Для конфігурації сервера це дивно, тому що, AFAIK, переважна більшість веб-серверів вже багато років працює в конфігурації 64 біт. Враховуючи звичайні випадки використання для сайтів ASP.NET, чи є якісь причини надати перевагу 32 бітам понад 64 біт?

Відповіді:


5

Залежить від вашої завантаженості.

IIS + .NET на x64 скелях і може підтримувати дуже великі навантаження. Якщо ви зробите тестування навантаження, ви побачите, що сервери x64 з достатньою кількістю процесора та оперативної пам’яті перевершують x86 здоровою мірою.

Якщо ваша завантаженість невелика, і / або ви збираєтеся завантажити баланс на декількох серверах, ви можете виявити, що x86 добре. (Я переконаний, що використовую найменші можливі екземпляри для робочого навантаження - стільки ІТ викидає метал на проблему, і це марно. Х86 прекрасне. На жаль, отримати складники x86 стає складніше.)

У нашому випадку ми завантажуємо баланс декількох серверів x64. Однак під час операцій з розгортанням все або більшість навантажень може бути спрямоване на один сервер. У нашому випадку, якби цей сервер був x86, це було б підкреслено і дуже повільно. Оскільки це x64, він може переносити навантаження, і користувачі цього не помічають.


Нещодавно я дізнався, що сміттєзбірник замикає всі нитки під час процесу, викликаючи в рази більшу затримку. Після ввімкнення 64-розрядних перевезень сміття діятиме рідше, тим самим покращуючи ефективність вашої програми.
Том

3

Відповідь - це складно. Це просто, якщо ваш додаток вимагає доступу до багатьох ГБ оперативної пам’яті (більшість програм не має), тоді ви повинні мати 64-бітну.

В іншому випадку, лише тестування вашого конкретного додатка під 32-бітними та 64-бітовими версіями може вам точно сказати, і тоді це залежить від того, що для вас найважливіше, слід пам’яті чи продуктивність процесора. Пам’ятайте: якщо у вас не вистачає пам’яті, ваш додаток буде або перехопити сторінку на диск, і сказати до побачення (у значній мірі) будь-який приріст продуктивності, який ви, можливо , отримали від переходу на 64 біт, або ваше автоматичне масштабування запуститься, і ви стягуватиме більше грошей Azure за додані екземпляри сервера, інакше ви почнете отримувати помилки OutOfMemory, які закінчуються грою для вашого додатка.

Дивіться також: https://www.hanselman.com/blog/PennyPinchingInTheCloudYourWebAppDoesntNeed64bit.aspx


1

Зайдіть у 32 біт, якщо вам не потрібен 64-бітний адресний простір - що рідко для звичайного веб-сайту.

Причина полягає лише в тому, що веб-сайтам зазвичай не потрібен адресний простір, а 32 бі програми працюють швидше.

Тепер ви кажете:

переважна більшість веб-серверів вже багато років працює в конфігурації 64 біт

Так, але:

Установка за замовчуванням для пулу додатків IIS повинна починатися в 32-бітному режимі - з міркувань сумісності та продуктивності. Рекомендація Microsoft для налаштування IIS полягає у використанні 32-бітових пулів додатків на 64-бітному сервері.

ChecK:

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

за офіційною заявою.

Ви можете бути впевнені, що він працюватиме на 64-бітному сервері, оскільки немає жодної 32-розрядної пропозиції від Microsoft. Але якщо вам не потрібні більші обсяги оперативної пам’яті, вплив на перформацію не варто.


"Установка за замовчуванням для пулу додатків IIS повинна починатися в 32-бітному режимі". Це вже не було правдою. IIS - це завжди x64 на x64 Server OS і вимагає злому зробити 32 біт.
Jonesome Reinstate Моніка

2
"32-бітні програми працюють швидше." це глобально не відповідає дійсності.
xaxxon
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.