Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 650. Azure - "scm" 프로세스와 엮인 서비스 모음 [링크 복사], [링크+제목 복사],
조회: 12830
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

(시리즈 글이 8개 있습니다.)
개발 환경 구성: 395. Azure Web App의 이벤트 로그를 확인하는 방법
; https://www.sysnet.pe.kr/2/0/11683

디버깅 기술: 124. .NET Core 웹 앱을 호스팅하는 Azure App Services의 프로세스 메모리 덤프 및 windbg 분석 개요
; https://www.sysnet.pe.kr/2/0/11839

Java: 21. Azure Web App Service에 배포된 Java 프로세스의 메모리 및 힙(Heap) 덤프 뜨는 방법
; https://www.sysnet.pe.kr/2/0/12685

디버깅 기술: 180. Azure - Web App의 비정상 종료 시 남겨지는 로그 확인
; https://www.sysnet.pe.kr/2/0/12692

개발 환경 구성: 647. Azure - scale-out 상태의 App Service에서 특정 인스턴스에 요청을 보내는 방법
; https://www.sysnet.pe.kr/2/0/13098

개발 환경 구성: 649. Azure - 비주얼 스튜디오를 이용한 AppService 원격 디버그 방법
; https://www.sysnet.pe.kr/2/0/13164

개발 환경 구성: 650. Azure - "scm" 프로세스와 엮인 서비스 모음
; https://www.sysnet.pe.kr/2/0/13165

개발 환경 구성: 737. Azure Web App에서 Scale-out으로 늘어난 리눅스 인스턴스에 SSH 접속하는 방법
; https://www.sysnet.pe.kr/2/0/13833




Azure - "scm" 프로세스와 엮인 서비스 모음

Azure Kudu의 "Process Explorer"에서 프로세스 목록을 확인해 보면,

azure_scm_proc_1.png

"AppService"를 호스팅하는 w3wp.exe와 함께 또 하나의 "w3wp.exe (scm)"이 올라온 것을 볼 수 있습니다. 저 scm은 위의 화면을 보여주는 "https://[appservice_name].scm.azurewebsites.net/ProcessExplorer/"를 호스팅하는 역할을 합니다.

혹시 "[appservice_name].scm.azurewebsites.net" 사이트를 방문하지 않으면 저 "w3wp.exe (scm)" 프로세스가 없는 것일까요? 존재 유무를 확인하려면 "Process Explorer"를 띄워야 하는데 그로 인해 scm 프로세스가 생성됩니다. ^^; 뭐랄까... 분야는 다르지만 일종의 "하이젠베르크의 현미경"과 같은 현상이 나오는 것입니다. ^^

게다가 이것은 AppService를 배포하는 endpoint 접근 시,

https://netnetwin.scm.azurewebsites.net/msdeploy.axd?site=NetNetWin ...

역시 그에 대응하는 경로가 "scm"을 포함하므로 그냥 늘 함께 떠 있다고 생각하면 됩니다.




그런데 scm 프로세스는 Azure Kudu 서비스만을 관리하는 것은 아닙니다. AppService의 DaaS(Diagnostics as a Service)를 사용하면 해당 scm 프로세스의 하위에 다음과 같이 "cmd.exe (webjob)"과 "DaasRunner.exe (webjob)"이 생성됩니다.

azure_scm_proc_2.png

위의 상태를 확인할 수 있는 가장 쉬운 방법은 (현재는 deprecated 기능이지만) "https://<YourSiteName>.scm.azurewebsites.net/DaaS" 경로를 방문해 보는 것입니다.




그 외에, scm은 원격 디버깅 서비스도 관리합니다. 지난 글에 설명한,

Azure - 비주얼 스튜디오를 이용한 AppService 원격 디버그 방법
; https://www.sysnet.pe.kr/2/0/13164

방법으로 원격 디버깅 설정을 AppService에 추가해 비주얼 스튜디오로 원격 디버깅을 하면 이제 프로세스 구조는 이렇게까지 복잡해집니다.

azure_scm_proc_5.png




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 11/18/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  [22]  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13425정성태10/11/202312741닷넷: 2149. C# - PLinq의 Partitioner<T>를 이용한 사용자 정의 분할파일 다운로드1
13423정성태10/6/202312606스크립트: 58. 파이썬 - async/await 기본 사용법
13422정성태10/5/202311592닷넷: 2148. C# - async 유무에 따른 awaitable 메서드의 병렬 및 예외 처리 [1]
13421정성태10/4/202311940닷넷: 2147. C# - 비동기 메서드의 async 예약어 유무에 따른 차이
13420정성태9/26/202321656스크립트: 57. 파이썬 - UnboundLocalError: cannot access local variable '...' where it is not associated with a value
13419정성태9/25/202312373스크립트: 56. 파이썬 - RuntimeError: dictionary changed size during iteration
13418정성태9/25/202313544닷넷: 2146. C# - ConcurrentDictionary 자료 구조의 동기화 방식
13417정성태9/19/202313198닷넷: 2145. C# - 제네릭의 형식 매개변수에 속한 (매개변수를 가진) 생성자를 호출하는 방법
13416정성태9/19/202311040오류 유형: 877. redis-py - MISCONF Redis is configured to save RDB snapshots, ...
13415정성태9/18/202312976닷넷: 2144. C# 12 - 컬렉션 식(Collection Expressions) [2]
13414정성태9/16/202312316디버깅 기술: 193. Windbg - ThreadStatic 필드 값을 조사하는 방법
13413정성태9/14/202313685닷넷: 2143. C# - 시스템 Time Zone 변경 시 이벤트 알림을 받는 방법
13412정성태9/14/202317169닷넷: 2142. C# 12 - 인라인 배열(Inline Arrays) [1]
13411정성태9/12/202313065Windows: 252. 권한 상승 전/후 따로 관리되는 공유 네트워크 드라이브 정보 [1]
13410정성태9/11/202314406닷넷: 2141. C# 12 - Interceptor (컴파일 시에 메서드 호출 재작성) [1]
13409정성태9/8/202314110닷넷: 2140. C# - Win32 API를 이용한 모니터 전원 끄기
13408정성태9/5/202313257Windows: 251. 임의로 만든 EXE 파일을 포함한 ZIP 파일의 압축을 해제할 때 Windows Defender에 의해 삭제되는 경우
13407정성태9/4/202313338닷넷: 2139. C# - ParallelEnumerable을 이용한 IEnumerable에 대한 병렬 처리
13406정성태9/4/202313064VS.NET IDE: 186. Visual Studio Community 버전의 라이선스
13405정성태9/3/202314431닷넷: 2138. C# - async 메서드 호출 원칙
13404정성태8/29/202314587오류 유형: 876. Windows - 키보드의 등호(=, Equals sign) 키가 눌리지 않는 경우
13403정성태8/21/202312497오류 유형: 875. The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EB3E94ADBE1229CF
13402정성태8/20/202313145닷넷: 2137. ILSpy의 nuget 라이브러리 버전 - ICSharpCode.Decompiler
13401정성태8/19/202313338닷넷: 2136. .NET 5+ 환경에서 P/Invoke의 성능을 높이기 위한 SuppressGCTransition 특성 [1]
13400정성태8/10/202312970오류 유형: 874. 파이썬 - pymssql을 윈도우 환경에서 설치 불가
13399정성태8/9/202311571닷넷: 2135. C# - 지역 변수로 이해하는 메서드 매개변수의 값/참조 전달
... 16  17  18  19  20  21  [22]  23  24  25  26  27  28  29  30  ...