이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 7562|회답: 2

[.NET 코어] ASP.NET 코어는 IIS에서 프로세스 중(in-process) 및 프로세스 종료(out-of-process) 모델을 호스팅합니다

[링크 복사]
2022-5-14 13:18:08에 게시됨 | | | |
.NET Core 크로스 플랫폼 특성상 ASP.NET Core 프로젝트는 Windows와 Linux 모두에서 실행할 수 있으며, Windows에 배포될 경우 ASP.NET Core에 Kestrel 컨테이너가 포함되어 있어 IIS 서비스와 독립적으로 IIS에서 배포하거나 명령줄을 통해 직접 실행할 수 있습니다.

ASP.NET Core 애플리케이션을 IIS 서비스에 배포하는 방법에 대한 자세한 내용은 다음 항목을 참고하실 수 있습니다:

ASP.NET 코어를 IIS 서버에 배포하세요
https://www.itsvse.com/thread-7838-1-1.html
ASP.NET 코어는 IIS에 배포됩니다진행 중그리고절차 종료두 가지 호스팅 모델

리소스:

하이퍼링크 로그인이 보입니다.
하이퍼링크 로그인이 보입니다.


공정 중 모델

Core 3.0 이후 ASP.NET,IIS에 배포된 모든 애플리케이션에 대해 기본적으로 프로세스 내 호스팅이 활성화되어 있습니다, web.config 파일은 다음과 같습니다:

볼 수 있습니다hostingModel="inprocess", 진행 중인 모델Kestrel은 사용되지 않습니다대신 IISHttpServer()를 사용하여 IIS 애플리케이션 풀 내에 직접 호스팅된 새로운 웹 서버를 구현하는데, 이는 전통적인 ASP.NET 가 IIS에 도입된 방식과 다소 유사합니다.

다음 도표는 IIS, ASP.NET Core 모듈, 그리고 진행 중인 호스팅 애플리케이션 간의 관계를 보여줍니다:



웹사이트에 접속하려고 하면 아래 이미지에서 보이는 응답 헤더를 통해 서버를 볼 수 있습니다:



작업 관리자를 통해 프로세스를 살펴보면, 아래 그림과 같이 두 개의 프로세스만 있습니다:



프로세스 외 모델

이 모델 IIS는 역방향 프록시 역할을 하며, 요청을 받으면 ASP.NET Core 애플리케이션에 내장된 크로스 플랫폼 웹 서버인 케스트렐 서비스로 전달해야 합니다.

다음 도표는 IIS, ASP.NET Core 모듈, 그리고 프로세스 외 호스팅 애플리케이션 간의 관계를 보여줍니다:



우리는 web.config 파일을 다음과 같이 수정합니다:

브라우저를 통해 웹사이트에 접속하면, 응답 헤더의 서버 값이 아래 그림에서 볼 수 있듯이 Kestrel로 변환된 것을 볼 수 있습니다:



작업 관리자를 동시에 살펴보니, 아래 그림에서 보듯이 세 가지 프로세스가 있습니다:



요약

InProcess 관리 모델에서는 요청과 응답이 w3wp.exe 또는 IISExpress를 통해 제공되지만, OutOfProcess 작업자 프로세스에서는 dotnet.exe
InProcess 관리 모델에서는 단일 웹 서버를 사용하며, OutOfProcess는 두 개의 웹 서버를 사용할 수 있습니다.

새로운 In-Process 모델을 사용하는 명백한 이유는 더 빠르고 자원을 덜 사용하기 때문입니다.InProcess 관리 모델은 더 나은 성능을 제공합니다왜냐하면 이 과정이 IIS 애플리케이션 풀 내에서 직접 실행되기 때문입니다. 내부 HTTP 트래픽과 오버헤드가 없으며, 요청은 즉시 처리됩니다.





이전의:Nginx가 HTTP/2 프로토콜 지원 기능을 추가했습니다
다음:HttpClient를 잘못 사용하면 소프트웨어가 망가질 수 있습니다
 집주인| 2022-5-14 13:20:23에 게시됨 |
ASP.NET 핵심 프로세스 내외의 성능:http://blog.iis7.com/article/5958.html
IIS, Nginx, Caddy 하에서의 Core 5 성능 테스트 ASP.NET:https://cloud.tencent.com/developer/article/1788073
2022-5-14 15:07:14에 게시됨 |
배우기 위해 배우세요
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com