2016-08-06 7 views
4

ASP.NET MVC가 나왔을 때 Microsoft는 ASP.NET Web Forms를 대체 할 예정이 아닌 곳이 여러 곳에서 여러 번 발표했습니다. 다른 말로하면 유용 할 수있는 또 다른 기술 일뿐 아니라 다른 시나리오에서 Web Forms를 사용할 수도 있습니다.Owin/Katana가 Web API를 대체 할 예정입니까?

그러나 기업이 시장에 진입함에 따라 너무 비싸기 때문에 기술의 정글을 가질 수 없습니다. 그들은 일반적으로 성숙한 기술을 선택하고,이를 고수하고, 구축하고, 확장하여 비용을 줄이기 위해 요소를 재사용합니다.

이제 웹 API에서 Owin/Katana로 이동하기로 결정했습니다. 우리가 Owin에게 100 % 이사하는 것이 괜찮은지 궁금합니다.

내가이 질문을하는 이유는 스트리밍, 압축, 인증, UGC의 정규화, I18N & L10N의 지원 등을 포함하여 웹 API 용으로 매우 풍부한 코드베이스를 생성했기 때문입니다.

Owin으로 이전하려면 Owin의 아키텍처가 Web API와 다르기 때문에 Owin에 대해 이러한 시설/유틸리티를 다시 만들어야합니다.

더 빠르고 가볍고 자체 호스팅되는 서버이기 때문에 Microsoft의 서비스 기술인 것처럼 보이기 때문에 Owin으로 이동하고 싶습니다.

Owin으로 완전히 이전하고 Owin을 통해 모든 서비스가 제공되는 미래를 상상해도 안전합니까? Web API 사용을 중단합니까?

+1

개념이 잘못되었습니다. 'OWIN'과'Web host'를 비교해야합니다. – dotctor

+0

자기 호스팅이나 다른 OS에서 호스팅이 필요한 경우에는 '웹 호스트'와 'IIS'에서 'OWIN'기반 호스팅 메커니즘으로 전환 해보십시오. – dotctor

답변

4

OWIN은 사양입니다. 서버와 응용 프로그램이 모두 사용할 수있는 공용 인터페이스를 설명하므로 응용 프로그램을 서버에 단단히 연결할 필요가 없습니다.

Katana는 ASP.NET을 IIS에서 분리하는 첫 번째 단계입니다. 공식 로드맵에 따라 카타나 has stopped now에서 작업하십시오. Katana를 위해 개발 된 아이디어와 기술은 다음 버전의 ASP.NET (ASP.NET Core)으로 옮겨졌습니다.

OWIN 자체 위에 응용 프로그램을 빌드하는 것은 의미가 없습니다. HTTP보다 추상화 수준이 낮기 때문에 (원시 요청과 응답을 그대로 처리하기 때문입니다). 이는 일반적으로 저수준 액세스가 필요한 미들웨어 구성 요소를 구축하는 경우에만 필요합니다.

다른 말로하면 : ASP.NET에 이미있는 모든 것을 재발 명하는 데 많은 시간을 소비하기 때문에 OWIN에서 응용 프로그램을 다시 작성하면 안됩니다.

ASP.NET Core은 ASP.NET 및 웹 API의 차세대 버전입니다. 그것은 당신이 언급 한 모든 것을 가지고 있습니다 : 빠르고, 가볍고, 자기 주최 할 수 있습니다. 아키텍처를 다시 빌드해야하는 경우 ASP.NET Core에서 수행하십시오.

+0

ASP.NET 코어 및 OWIN에 대한 자세한 내용은 여기를 참조하십시오. [ASP.NET 코어는 여전히 OWIN을 사용합니까?] (http://stackoverflow.com/questions/38713134/does-asp-net-core-still-use -). –

+1

* Katana is deprectated *라는 유효한 링크를 참조 할 수 있습니까? –

+1

@SaeedNeamati 확실히, Katana에 대한 자세한 정보로 내 대답을 편집했습니다. 공식 로드맵보기 (v3 이후 중단) : https://katanaproject.codeplex.com/wikipage?title=roadmap&referringTitle=Home –