OWIN и Katana, зачем отделять приложение от сервера?

Я не совсем понимаю, что это здорово, чтобы иметь возможность самостоятельно запускать приложение, и это может быть приятно, так как если IIS по какой-либо причине идет вниз... тогда все ваши сайты снижаются.., но если они являются собственными хозяевами, тогда они живут там собственной жизнью, там есть собственный контекст.., который, я думаю, хорош.. Но я все еще не понимаю плюсы этого. Я пропускаю много ненужных вещей в трубе IIS, используя owin, который ускоряет приложение, или.. какие фактические профи? (вам не нужно перечислять их все, если их много:), но именно поэтому я понимаю, почему вы хотели бы использовать OWIN и Katana над IIS)

Спасибо заранее!

Ответ 1

Ваш вопрос действительно.

Вероятно, вы, главным образом, думаете о веб-серверах. Обслуживание HTML (или json или websockets) может использоваться для гораздо большего.

Я использую Nancy вместо IIS, потому что у меня есть небольшое приложение, которое я только хочу достичь изнутри, в то время как IIS обращен наружу. Также - если на машине нет IIS, мне не нужно ее устанавливать.

Предположим, вы запустили OSX или * nix. Тогда у вас может быть очень хороший язык и редактор ditto и запустить простой веб-сервер на Mono.

Предположим, вы используете микроконтроллер, например Netduino - IIS не подходит для него. Я сомневаюсь, что Нэнси тоже там работает, но вы поняли, не все нуждается в 24-х колесиках для перемещения данных.

Скажите, что вы автоматизируете свой дом с помощью машины Win в качестве сердца и центра. Теперь, действительно ли вы хотите установить IIS, который делает godsknowwhat или его достаточно как можно меньше?
Если автоматизированный дом выше - ваш проект F/OSS для вашего питомца, и вы сильно страдаете от автоматизированного тестирования. Нэнси хорошо известна тем.

Еще один пример из моей минной реальности. У меня есть сервер снежного покрова, работающий с устаревшей CMS Umbraco. Я положил свои мягкие перчатки, прежде чем прикоснуться к этой машине и только так мягко.
Если мне понадобится другой веб-сервер или json-сервер, на нем Нэнси сделает наименьший возможный отпечаток.

Аргумент OWIN устарел, хотя Microsoft, похоже, имеет более или менее скрытую дверь.

НТН

Ответ 2

Обзор OWIN и Katana из MS - исторический фон и обоснование обоих проектов можно найти здесь:

http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana

Подводя итог из статьи:

OWIN: его цель заключается не в следующем веб-фреймворке, а скорее в спецификации взаимодействия веб-фреймворков и веб-серверов.

Проект Katana: проект Katana представляет собой набор компонентов OWIN, которые, хотя и с открытым исходным кодом, создаются и публикуются Microsoft. Эти компоненты включают в себя как компоненты инфраструктуры, такие как хосты и серверы, так и функциональные компоненты, такие как компоненты аутентификации и привязки к инфраструктурам, таким как SignalR и ASP.NET Web API. Katana приносит много преимуществ Node.js(и подобных ему фреймворков) - простота, с которой можно было бы создавать и запускать веб-сервер, не заставляя разработчика выкидывать все, что она знает о разработке ASP.NET Web Приложения.