Что происходит в обработке Верхней половины и Нижней половины Прерываний?

При тестировании Моно / Linux по сравнению с рабочими нагрузками.NET/Windows, необходимо помнить, что там более приведено в действие, чем просто среда выполнения.

Существуют области, в которых Linux работает лучше, чем Windows (Большая часть IO, и сетевые операции имеют тенденцию быть быстрее для сопоставимых программ C). В то же время.NET имеет более усовершенствованный сборщик "мусора" и более усовершенствованный JIT-компилятор.

Когда дело доходит до библиотек классов это действительно зависит, на каких путях выполнения кода Вы используете. Как JacksonH заявил относительно предыдущего сообщения, можно поразить пути выполнения кода, которые были оптимизированы в одной реализации, но не на другом, и наоборот.

На рабочих нагрузках ASP.NET необходимо помнить, что установка по умолчанию направит все входящие запросы к единственному процессу "рабочего", mod_mono, и чероки используют аналогичный подход:

Many HTTP server to one mod-mono-server
(источник: mono-project.com)

По крайней мере, с Apache мы поддерживаем механизм, где можно разделить рабочие нагрузки приложений через несколько рабочих, который помогает при высоких загрузках, поскольку он избегает любой незавершенной блокировки и дает каждому рабочему целый пул потоков для работы от:

Routing requests to different ASP.NET hosts with mod_mono
(источник: mono-project.com)
Детали о том, как настроить эту установку, доступны здесь:

http://mono-project.com/Mod_mono

1
09.02.2011, 11:53
1 ответ

Глава 6 "Разработки Ядра Linux" Robert Love объясняет это, также, как и эти свободные веб-ресурсы:

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

3
27.01.2020, 23:29

Теги

Похожие вопросы