Больше против быстрых ядер на веб-сервере [закрыто]

Обсуждение Dual vs. Quadcore столь же старо, как и само Quadcores, и ответ обычно таков: «Это зависит от вашего сценария». Таким образом, здесь сценарий представляет собой веб-сервер (Windows 2003 (не уверен, если x32 или x64), 4 ГБ ОЗУ, IIS, ASP.net 3.0).

У меня сложилось впечатление, что ЦП в веб-сервере не должен быть ТАКИМ быстрым, потому что запросы обычно довольно легковесны, поэтому наличие большего количества (более медленных) ядер должно быть лучшим выбором, поскольку мы получили много небольших запросов.

Но так как у меня нет большого опыта в балансировке нагрузки IIS и я не хочу тратить много денег только на то, чтобы узнать, что я сделал неправильный выбор, может кто-то, у кого немного больше опыта, прокомментировать, стоит ли Чем медленнее или медленнее ядра лучше?

6.08.2008 18:28:04
4 ОТВЕТА
РЕШЕНИЕ

Для чего-то вроде веб-сервера разделение задач обработки каждого соединения (относительно) легко. Я говорю, что можно с уверенностью сказать, что веб-серверы являются одним из наиболее распространенных (и сглаженных) применений параллельного кода. А поскольку вы можете разделить большую часть обработки на несколько отдельных потоков, большее количество ядер на самом деле принесет вам пользу. Это одна из главных причин, почему виртуальный хостинг возможен. Если серверное программное обеспечение, такое как IIS и Apache, не может выполнять запросы параллельно, это будет означать, что каждый запрос страницы должен быть обработан в виде очереди ... вероятно, делая время загрузки невыносимо медленным.

Это также объясняет, почему серверные операционные системы высшего класса, такие как Windows 2008 Server Enterprise, поддерживают что-то вроде 64 ядер и 2 ТБ ОЗУ. Это приложения, которые на самом деле могут использовать преимущества такого количества ядер.

Кроме того, поскольку каждый запрос, вероятно, имеет низкую загрузку процессора, вы можете (для некоторых приложений) обходиться более медленными ядрами. Но очевидно, что каждое ядро ​​быстрее может означать возможность быстрее выполнять каждую задачу и теоретически обрабатывать больше задач и больше запросов к серверу.

16
6.08.2008 18:40:08

Чем больше, тем лучше. Поскольку языки программирования становятся все более сложными и абстрактными, требуется больше вычислительной мощности.

Атлет Джефф считает, что Quadcore лучше .

1
6.08.2008 18:31:14

Мы используем Apache на Linux, который разветвляет процесс для обработки запросов. Мы обнаружили, что большее количество ядер помогает нашей пропускной способности, поскольку они уменьшают задержку процессов, ожидающих помещения в очередь выполнения. У меня нет большого опыта работы с IIS, но я думаю, что тот же сценарий применим к его пулу потоков.

3
6.08.2008 18:33:50

Марк Харрисон сказал:

У меня нет большого опыта работы с IIS, но я думаю, что тот же сценарий применим к его пулу потоков.

Действительно - больше ядер = больше потоков, работающих одновременно. IIS по своей природе является многопоточным и легко использует это.

3
6.08.2008 18:40:39