Windows Update 확인이 왜 그렇게 느립니까?


123

자동 업데이트가 해제 된 Windows 7 PC가 있습니다. 한 달에 한 번씩 일괄 업데이트를 수행합니다. 그러나 "업데이트 확인"마다 15 ~ 30 분이 걸립니다. 업데이트 확인이 왜 그렇게 느릴 수 있는지 모르겠습니다. 백그라운드에서 무슨 일이 일어나고 있는지 궁금합니다. 컴퓨팅 해시입니까? 자동 업데이트가 활성화 된 PC는 부팅 할 때마다 동일한 운명에 처하게됩니까 (알지 못하는 경우에만)?


1
백그라운드 애플리케이션이 실행중인 것 같습니다. 시스템 성능은 어땠습니까?
vembutech

1
내 PC는 잘 작동합니다. CPU는 10 %를 넘지 못했습니다. 그것이 "업데이트를 찾는 중"일 때 이상한 것을 발견하지 못했습니다.
일부 사용자

처음에 Windows Update를 비활성화하는 이유는 무엇입니까? 백그라운드에서 실행될 수 있으며 재부팅하라는 메시지가 표시 될 때까지 알지 못할 수도 있습니다. 즉시 할 필요는 없습니다.
gronostaj

3
일이 잘못되면 롤백 할 수 있도록 배치로 업데이트하고 싶습니다. 백그라운드 업데이트는 추적하기가 어렵고 롤백하는 데 시간이 오래 걸립니다. 그리고 수동 업데이트에서는 진행하기 전에 변경 사항을 검토 할 수있는 옵션도 있습니다. 또한 가끔 사람들이 자신의 PC를 깨끗하게 설치하도록 돕고 같은 문제에 직면하게됩니다.
일부 사용자

5
@someuser 두 가지 이점을 모두 누릴 수 있습니다. 업데이트다운로드하도록 WU를 구성 하지만 백그라운드에서 필요한 업데이트를 검색하지만 승인 없이는 설치하지 않는 업데이트 를 설치할지 여부를 선택할 수 있습니다 . 자동으로 설치되지는 않지만 매월 패치 작업을 수행하면 적용 가능한 모든 업데이트가 나열됩니다.
Twisty Impersonator

답변:


103

다음과 같은 이유로 업데이트 확인 부분이 너무 느립니다.

  • Windows 7은 구성 요소 기반 서비스 를 사용합니다. 즉, Windows Update는 파일 및 구성 요소 종속성 / 상호 종속성을 확인하고 이전 파일 / 구성 요소의 병렬 버전을 유지하면서 개별 업데이트를 제거 할 수 있도록 엄청나게 열심히 노력해야합니다. / components를 사용하지만 다른 업데이트 / 구성 요소를 중단하지 않으면 서 우선 순위를 고려하면서 항상 다른 것을 알고 있습니다. 이 모든 작업을 수행하는 코드는 지옥처럼 복잡해야합니다.

  • Windows 7 64 비트는 각 업데이트의 32 비트 및 64 비트 버전을 유지해야합니다.

  • Windows는 각 업데이트의 GDR 및 LDR 버전 을 유지해야합니다. 즉, Windows 7 64 비트에서는 각 업데이트에 대해 32 비트 GDR, 32 비트 LDR, 64 비트 GDR, 64 비트 LDR을 얻게됩니다.

  • Windows Update의 코드는 개념상의 복잡성으로 인해 비효율적입니다. 지난 몇 년 동안의 관찰에 따르면 릴리스 된 총 업데이트 수가 증가함에 따라 업데이트 확인 시간이 거의 기하 급수적으로 증가했습니다. 나에게 이것은 대체 알고리즘을 결정하거나 의존성을 해결하기 위해 어떤 종류의 재귀 알고리즘이 사용되고 있음을 나타냅니다.

안타깝게도 Microsoft는 Windows 내부에 대해 이야기하는 것을 좋아하지 않기 때문에 스스로 알아 내거나 추측해야합니다.


3
이것은 또한 업데이트 설치 가 왜 그렇게 느린 지를 설명하는 것 같습니다 . 그것에 대해 할 수있는 일이 있습니까?
Michael Hampton

3
@MichaelHampton 내 경험에 도움이되는 세 가지 사항은 다음과 같습니다. 1 탁월한 단일 스레드 성능 및 대용량 CPU 캐시 (예 : 3.4GHz i5 / i7 Haswell) 를 갖춘 PC , 2 SSD 하드 드라이브, 3 실시간 모니터링 구성 요소 비활성화 업데이트를 설치하는 동안 AntiVirus 소프트웨어
misha256

6
@MichaelHampton 어떤 사람들은 당신에게 잘못된 정보를주었습니다. MS 업데이트 서버는 일반적으로 매우 빠릅니다. 또한 PC / HDD에서 업데이트 할 대상을 스캔하는 것도 일반적으로 매우 빠릅니다. 다음에 업데이트 확인을 수행 할 때는 먼저 리소스 모니터를 열어서 업데이트의 어느 부분이 너무 많은 시간이 걸리는지 확인할 수 있습니다. 처음에는 하드 드라이브를 쓰러 뜨리고 인터넷과 대화하는 데 시간이 걸립니다. 완료되면 하나의 CPU 코어가 영원히 100 %에있게됩니다. 그것이 PC의 업데이트 엔진으로 다음에해야 할 일을 (비효율적으로) 파악합니다.
misha256

2
@someuser 그렇습니다. 그러나 전반적인 CPU 사용률을보고 있습니다. 단일 코어의 CPU 사용률을보십시오. Windows Update를 수행하는 동안 하나의 코어가 영원히 100 %로 제한됩니다. Windows Update 엔진은 분명히 단일 스레드에 CPU 바인딩되어 있습니다. 물론 RAM 사용량이 많지만 속도 저하의 원인은 아닙니다. 복잡하고 비효율적 인 것은 업데이트 엔진의 알고리즘입니다.
misha256

5
어떻게 데비안이이 모든 작업을 수행하며 몇 초에서 5 분 (매우 큰 업데이트 인 경우) 사이에 소요됩니다. CPU 사용량이 적 으면 백그라운드에서 조용히 수행되므로 도중에 종료 할 수 있으며 재부팅 할 필요가 거의 없습니다.
ctrl-alt-delor

61

기존 답변에서 문제의 여러 측면이 처리되었습니다. 나는 이미 말한 것을 반복하지 않고 일반적인 방식으로 원인을 나열함으로써 그것들을 함께 묶으려고 노력할 것입니다.

  1. Microsoft Windows Update 메커니즘은 매우 정교하므로 불행히도 복잡합니다.
  2. WU는 수많은 하드웨어 및 소프트웨어 조합을 지원해야합니다.
  3. WU는 올바른 순서로 업데이트를 적용해야합니다
  4. Windows 7은 이전 시스템이며 SP2는 기한이 지났으며 도착하지 않을 것이므로 많은 업데이트가 발생합니다.
  5. 지난 몇 년 동안 Microsoft는 수많은 보안 문제를 해결해야한다는 큰 압박을 받았으며, 그 결과 많은 세대의 수정 사항과 수정 사항 등이 9 세대로 바뀌 었습니다.
  6. Microsoft는 일반적으로 지수 알고리즘 인 업데이트 메커니즘을 충분히 최적화 할 수 없었기 때문에 무차별 대입 알고리즘이 다소 느립니다.
  7. Microsoft의 WU 서버에 과부하가 걸리는 경우가 있습니다.

이 점들을 좀 더 자세히 살펴 보겠습니다.

Windows Update 복잡성

업데이트가 릴리스 된 후에는 시간이 지남에 따라 개정, 대체 및 만료의 세 가지 다른 단계가 추가 될 수 있습니다.

업데이트 수정 : 이전에 릴리스 된 업데이트를 변경하면 일부 업데이트가 변경된 업데이트 수정이라고합니다. 전체 업데이트가 아닌 부분 업데이트 업데이트입니다.

대체 업데이트 : 이전 릴리스를 완전히 대체 한 것입니다. 때때로 Microsoft는 여러 릴리스를 단일 패키지로 포장하고 해당 패키지가 캡슐화 된 업데이트를 대체합니다.

만료 된 업데이트 : 유효한 업데이트 목록에서 제거 된 업데이트입니다. 이러한 업데이트는 더 이상 적용되지 않으며 설치를 위해 검색되지 않습니다. 대체 업데이트는 대체 업데이트로 교체 된 후에 대부분 만료됩니다.

업데이트에는 종속성 메커니즘도 있으므로 일부 업데이트에는 다른 업데이트를 먼저 적용해야 할 수도 있습니다.

만료 된 업데이트는 불행히도 컴퓨터에서 제거되지 않으므로 계산에 참여하기 때문에 WU 성능에 문제가 있습니다. 디스크 정리를 사용하여 오래된 Windows 업데이트제거 하면 약간의 개선이 이루어질 수 있습니다 (WU도 매우 취약하므로 시스템 드라이브의 백업 디스크 이미지를 먼저 가져옵니다).

우 계산

가능한 많은 조합이 가능하기 때문에 Microsoft는 WU 서버의 모든 업데이트를 거대한 트리 형식으로 유지합니다. 어떤 업데이트를 적용해야할지 결정하는 것은 클라이언트의 설치된 하드웨어 및 소프트웨어뿐만 아니라 이미 설치된 모든 업데이트를 고려하는 트리 정리 알고리즘에 의해 수행됩니다. 잘라낼 때 모두 성공적으로 적용됩니다.

이 알고리즘은 성공을 보장하지 않습니다. 즉, WU가 OS를 완전히 파괴하거나 심지어 부팅 할 수 없게 할 수도 있습니다. 예를 들어, A2에 대한 업데이트 B가 A1과 A2 사이에 릴리스 된 개정 A2가있는 업데이트 A1을 사용하는 것은 전적으로 이해할 수 있습니다. 이제 잘못된 결정이 치명적일 수있는 경우 설치 순서가 A1-B-A2인지 아니면 A1-A2-B인지를 알아 봅니다.

과부하 된 WU 서버

Wikipedia는 Windows Update 통계 에 대해 말합니다 .

2008 년 현재 Windows Update는 약 5 억 개의 클라이언트를 보유하고 있으며 하루에 약 3 억 5 천만 개의 고유 한 스캔을 처리했으며 클라이언트 시스템에 대한 평균 150 만 개의 동시 연결을 유지했습니다. 화요일 패치에서 Microsoft가 일반적으로 새로운 소프트웨어 업데이트를 출시하는 날에는 아웃 바운드 트래픽이 초당 500 기가비트를 초과 할 수 있습니다.

이 숫자는 아마도 두 배가되었을 것이며 WU 서버에 연결할 수없는 이유를 설명합니다. "업데이트 확인하지만 선택하겠습니다"의 WU 옵션을 사용하고 있으며 내 경험에 따르면 업데이트 확인시 대기 시간보다 오래 걸리며 연기가 필요합니다.

Windows 7의 오랜 역사

Windows 7은 2009 년 7 월 22 일에 릴리스되었습니다. 약 17 개월 후, 서비스 팩 1 (SP1)은 2011 년 2 월 22 일에 나왔습니다. 약 4.5 년 전입니다. 이는 SP2가 오래 전에 만료되었음을 의미합니다.

서비스 팩을 설치하면 전체 업데이트 기록이 지워져 실제로 Windows를 새로 설치 한 후와 마찬가지로 WU가 0부터 시작된다는 점이 좋습니다. 고려해야 할 업데이트가 적기 때문에 이것은 모든 계산 속도를 크게 향상시킵니다.

SP1 이후의 기존 업데이트의 수는 오늘날 WU 계산이 왜 그렇게 느린 지 설명합니다. Microsoft의 경우 최신 Windows 8.1 또는 Windows 10으로 업그레이드하여 문제를 "간단히"해결할 수 있으므로 WU는 업데이트 횟수가 적습니다.

결론

Microsoft가 여전히 Windows 7에 수많은 업데이트를 계속 적용함에 따라 WU는 시간이 지날수록 속도가 계속 느려집니다.

한 가지 가능한 최적화 방법은 오래된 Windows 업데이트제거하는 것 입니다. 또 다른 방법은 "업데이트 확인하지만 선택하겠습니다"의 WU 옵션을 사용하고 이른 아침이나 늦은 밤에 업데이트를 확인하는 것입니다.

대부분의 업데이트는 Windows 8 및 10에도 적용되므로 Microsoft WU 서버에 대한 부담은 Windows 10이 곧 출시 될 때만 증가합니다. 또한 Microsoft는 최신 운영 체제를 제공하는 데 따른 악센트와 함께 자체 정책에 따라 WU 서버의 대역폭을 소포하는 것 같습니다. 따라서 Windows 10이 릴리스되면 Windows 7의 속도가 느려질 것입니다. Windows 10의 경우.

WU가 너무 느리면 유일한 해결책은 이후 버전의 Windows로 업그레이드하는 것입니다.

좋은 소식 : Windows 7 및 8.1 용 SP2가 도착했습니다

Microsoft는 실제로 Windows 7 및 8.1 용 SP2를 게시했습니다. 이 업데이트는 알 수없는 이유로 Windows Update에서 제공되지 않으므로 수동으로 다운로드하여 설치해야합니다.

: 기사에서 그것을 얻을하는 방법에 대해 자세히
Microsoft는 Windows 7 및 8.1 업데이트 정밀 검사 -하지만 서비스 팩을 호출하지 않습니다 .


2
Windows 10 미리보기에서 업데이트 확인이 매우 빠릅니다.
Michael Hampton

업데이트 확인이 여전히 CPU 및 메모리 집약적 인 작업이라고 생각합니다. 그러나 프로그램은 때때로 CPU를 생성하여 PC 속도가 느려지지 않도록 작성되었을 수 있습니다. 자동 업데이트를 설정 한 사용자가 PC를 켤 때마다 계산이 수행되는지 궁금합니다.
일부 사용자

@Renju의 대답은 캐시가 있다고 주장하지만 내 경험에 따르면 이전 확인 직후에 수행하더라도 업데이트 확인은 똑같이 느립니다. 내 자신의 정보에 따르면 정리는 WU 서버와 클라이언트에서 수행됩니다. 서버에서 하드웨어로 설치하고 Microsoft 제품 / OS를 설치 한 것 같습니다. 현재 컴퓨터에 이미 설치된 업데이트로 클라이언트에서
harrymc

2
이 추측은 많은 양의 CPU를 사용하지 않고 많은 RAM을 사용하는 WU에 대한 포스터의 발언에서 동기가 부여됩니다. 이는 Microsoft에서 로컬 메모리로 다운로드 한 대규모 업데이트 트리 및 Microsoft의 추가 정보가 필요한 로컬 정리 작업과 일치합니다.
harrymc

3
"알고리즘의 성공을 보장하지는 않습니다. 이는 WU가 OS를 완전히 파괴하거나 심지어 부팅 할 수없는 상태로 만들 수 있다는 것을 의미합니다. 이것은 완전히 이해할 수 있습니다."
Sam Watkins

22

이 문제는 수년간 다른 수정 사항으로 수년에 걸쳐 왔으므로 2016 년 1 월 5 일 현재이 문제에 대한 업데이트 된 가이드는 다음과 같습니다.

2016 년 5 월 현재 새로 설치 한 후 Windows 7 SP1을 완전히 업데이트하는 훨씬 빠른 방법이 아래의 편집 섹션을 확인하십시오.

이것이 W7 SP1을 다시 설치하거나 Windows 업데이트 관련 문제로 인해 업데이트를 확인할 때 수행하는 작업입니다.

서비스 팩 1이 설치되어 있지 않으면이 안내서를 따르기 전에 설치하십시오.

KB-3138612를 다운로드 하여 나중에 찾을 수있는 곳에 저장하십시오.

SUR Tool 을 같은 장소에 저장하십시오

Windows 가로 드되기 전에 PC를 다시 시작하고 인터넷 연결을 끊으십시오. 모든 부팅 창에서 백그라운드에서 업데이트를 확인하고 업데이트 확인을 다시 시작하기 때문에 다운로드가 완료 될 때까지 다운로드 패키지가 설치되지 않기 때문에 중요합니다. Windows 가로 드되기 전에 인터넷에서 연결을 끊으면이를 막을 수 있습니다.

부팅이 완료되면 KB-3138612를 설치하고 재부팅이 필요한 경우 인터넷 연결을 끊으십시오.

이제 SUR 도구 패키지를 설치하십시오. 이것은 큰 패키지이며 Windows 업데이트 저장소 정리 및 복구와 함께 많은 업데이트를 설치합니다. 또한 나중에 설치해야 할 Windows 업데이트 수를 줄일 수 있습니다.

SUR 패키지 재부팅 설치 후 인터넷에 연결하고 수동 Windows Update를 수행하면 훨씬 빠르게 작동합니다. 이러한 수정 후에도 제어판에서 수동으로 시작한 경우 일부 W7 PC에서 업데이트 확인을 완료하는 데 최대 1 시간이 걸립니다.

다른 Windows 업데이트 문제가 있고 위의 두 업데이트가 설치되어 있으면 이 Microsoft Windows Update 수정 도구를 다운로드 ( "다른 이름으로 링크 저장"을 마우스 오른쪽 단추로 클릭)하여 실행하고 공격 모드를 선택하여 Windows 업데이트를 완전히 재설정하십시오. 재부팅하고 제어판에서 Windows 업데이트를 다시 시도하십시오. 이 도구는 다른 Microsoft Fixit 도구가 적어도 내 경험상 실패했을 때 문제를 해결합니다.

업데이트 : Microsoft는 Windows 7 SP1에 대한 대규모 업데이트 롤업을 발표했습니다 . 서비스 팩과 유사하지만이를 호출하지는 않습니다. 이렇게하면 새로 설치 한 후에 Windows 7을 더 빠르게 업데이트 할 수 있으며 더 이상 Windows 업데이트 문제가없고 재부팅이 많이 발생합니다. 이 업데이트 롤업은 시스템을 최신 상태로 2016 년 4 월 화요일에 패치합니다.

이것은 Windows Update를 통해 릴리스되지 않으므로 Internet Explorer를 사용하여 가져와 IE를 열고이 주소로 이동해야합니다

http://catalog.update.microsoft.com/v7/site/home.aspx

검색 상자 3125574를 입력하고 Enter 키를 누르십시오.

여기에 이미지 설명을 입력하십시오

이제이 롤업의 모든 버전을 볼 수 있습니다. 필요한 롤업을 선택하고 나중에 찾을 수있는 곳에서 다운로드하십시오.

여기에 이미지 설명을 입력하십시오

또한 Windows 업데이트 카탈로그 페이지를 사용하여이 업데이트를 먼저 다운로드하여 설치하십시오 (3020369 ). 롤업을위한 필수 구성 요소이며 3125574를 설치하고 이러한 업데이트를 적용 할 때 인터넷 연결이 끊어 져야합니다.


훌륭한 정보 감사합니다. 나는 현재 W7을 새로 설치하여 최신 사양의 노트북을 얻는 데 어려움을 겪고 있으므로 오늘 밤 당신의 프로세스를 보여줄 것입니다. SP1 Redist를 설치 한 후에도 WU가 SP1 자체뿐만 아니라 모든 SP1 이전 업데이트를 다운로드하여 설치하려고한다는 것을 알고 계셨습니까? 그렇다면 어떻게 피할 수 있는지 알고 있습니까? 나는 이것을 늦게 자주 보았으며, 잘못된 순서로 무언가를했다고 가정합니다. (보통 W7 설치> 칩셋 / gfx 드라이버 설치> SP1
Redist

1
나는 kb 설치 프로그램이 실행될 때 이미 설치되어 있고 체인의 다음 업데이트로 이동하는 것을 보았을 때 기본적으로 이미 설치된 업데이트를 건너 뜁니다. SUR 도구는이 문제를 해결해야합니다.
Moab

1
이것은 KB-3138612를 오프라인으로 설치 한 후 나를 위해 일했습니다 (다운로드, 인터넷 연결 끊기, 설치). 그런 다음 재부팅하고 MS 업데이트가 몇 분 내에 패키지를 다운로드하라는 메시지를 표시했습니다.
AndyC

9

당신은 사용할 때 CPU 사용량을 확인하는 ETW / WPR / WPA를 사용하면 CPU 사용에서 오는 것을 알 스캔시 wuaueng.dll!CUpdatesToPruneList::AddSupersedenceInfoIfNeeded에서 호출된다 wuaueng.dll!CAgentUpdateManager::FindUpdates. AddSupersedenceInfoIfNeeded 방법은 가장 느린 것입니다 . 제공되는 / 설치된 Windows 7 업데이트가 여전히 필요하거나 대체 된 것인지 (새 버전으로 업데이트 / 대체) 이름이 나타내는 것을 수행합니다. 이것은 매우 느립니다.

에서 마지막 윈도우 업데이트 클라이언트가 업데이트를 2016년 6월 이며, 윈도우 2016년 7월 7일 업데이트 롤업의 일부 업데이트 검색을 빠르게 다시입니다.

  1. 다운로드:

새 업데이트를 검색하는 데 1 분이 조금 걸립니다. 업데이트 KB3172605의 설치 속도를 높이려면 WindowsUpdate 서비스 ( net stop wuauserv)를 중지하십시오 .

이 WU 서비스 중지 트릭은 여러 MSU 업데이트를 설치할 때 설치 속도를 크게 높여줍니다.

@ECHO OFF
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /R "%~dp0" %%A IN (*Windows6.1-KB*.MSU) DO (
        CALL :SUB %%~nA        
    ECHO= Installing KB!KB_NUM!        
    >NUL net stop wuauserv
    WUSA "%%A" /quiet /norestart)
ECHO= == Press any key to close the Window ==
>NUL PAUSE

GOTO :EOF

:SUB

SET "KB_NUM=%*"
FOR /F "DELIMS=-" %%B IN ("%KB_NUM:*-KB=%") DO SET "KB_NUM=%%B"

Windows 10에서 Microsoft는 내 제안에 따라 문제를 해결하고 업데이트를 누적합니다. 현재 패치 레벨에 1 개의 대형 업데이트 만 있으면됩니다. 이 느린 점검은 더 이상 필요하지 않습니다.


1
KB3138612가 대부분의 W7sp1 새로 설치시 문제를 해결하는 것 같지만 어제 한 번도 업데이트 목록을 제공하는 데 1 시간 이상 걸렸으며 업데이트를 다운로드 할 때 대부분의 W7 PC에서 화면이 새로 고쳐지지 않습니다. 모두 다운로드 될 때까지 0 % 다운로드 상태를 유지하고 설치를 시작하면 Windows Update가 여전히 손상됩니다.
Moab

3

XP 업데이트에 대한 과거의 경험이 어떤 징후라면, 때때로 지수-시간 알고리즘을 사용할 수 있습니다 . 업데이트가 많으면 언제 까지나 오래 걸립니다. 현재 Win 7 업데이트는 비슷한 상황에 있습니다. 이 최신 둔화에 대한 공식적인 설명은 아직 없지만 시간이 오래 걸립니다. 새로운 버전이있을 때 "이전 버전에"발생한다는 점이 흥미 롭습니다. 냉소적 인 사람은 도울 수는 없지만 누군가가 [오래된] Windows의 선을 따라 의도적으로 그런 일이 일어나기를 원한다고 상상할 수 있습니까? 새 버전이 필요합니다. 아니면 휴가철을 시작하는 MS의 방법 일뿐입니다.

(예를 통해 자동으로 업데이트) 자동으로 제공되지 않는 WU의 속도 저하의 어떤 종류를위한 핫픽스가있다 : https://support.microsoft.com/en-us/kb/3102810 아아 그것의 진정한 차이를 만들지 않았다 내 경우에는 32 비트와 64 비트의 두 대의 다른 컴퓨터에서 시도했습니다. 또한 10 월부터 시작되었으므로 최신 문제가 아닐 수도 있습니다.


2

오늘날 Windows를 실행하는 PC는 약 10 억 대입니다. 각 PC에는 하드웨어, 액세서리, OS 버전, 언어, IE, 장치 드라이버 버전, 다양한 패치 수준의 Microsoft 소프트웨어, 보안 업데이트 등이 있습니다. Windows Update 시스템은 이러한 모든 조합을 정렬하여 올바른 업데이트를 제공해야합니다. 개별 PC. 각 업데이트에는 종속성 및 "supercedence"구조를 포함한 속성이 있습니다.

스캔의 첫 번째 단계 (첫 번째 실행)는 OS 버전, SP, 언어, PC 제조업체가 PC에 대한 가능한 업데이트 트리를 제거 할 것인지 결정하는 것입니다. 첫 번째 스캔을 기반으로, 가능한 업데이트 ID 세트가 디바이스로 전송되고 로컬 클라이언트는 어떤 업데이트가 설치, 대체되었는지 등을 계산 한 다음 해당 목록을 서버로 전송하고 후속 스캔을 위해 로컬로 사본을 캐시합니다. 서버는 UI에 적절한 UI 언어로 표시되는 설명 등으로 업데이트 요청을 클라이언트 요청에 응답합니다.

하루에 한 번 백그라운드에서 자동 업데이트 클라이언트가 점검 업데이트를 수행하고 설치된 업데이트의 로컬 캐시를 새로 고쳐 후속 스캔이 델타이고 빠릅니다. 이들은 PC의 % windir % \ softwaredistribution 폴더에 저장됩니다.

이전에 다운로드 한 업데이트에 대해서도 유사한 프로세스가 수행됩니다. 서비스는 패키지를 다시 다운로드하지 않습니다.

검색하는 동안 실제로 발생하는 일을 최소한 이해하는 데 도움이되는이 게시물을 찾았습니다. 아름답게 쓰여 있습니다. 그래서 나는 그것을 게시하고 있습니다. 여기 에서 원래 게시물을 찾을 수 있습니다

Windows 업데이트 설정을 다음과 같이 변경했을 때 설치 업데이트 확인에 눈에 띄는 변경이있었습니다. Check for updates but let me choose whether to download and install them


"Windows Update 시스템은 이러한 모든 조합을 정리하여 개별 PC에 적합한 업데이트를 제공해야합니다." 예, 그것은 SELECT 작업처럼 들립니다. 큰 테이블에서 빠르게 검색하는 알고리즘 만 있다면 "인덱싱"이라고 부를 수 있습니다. 도움이 될 것입니다.
David Tonhofer

1

내 생각에 가장 좋은 방법은 Windows 업데이트를 활성화하고 업데이트를 다운로드 할 수는 있지만 자동으로 설치할 수없는 옵션으로 전환하는 것입니다. 이렇게하면 검사 나 백그라운드 파일 다운로드를 기다리지 않고도 원하는 것을 설치할 수 있습니다.

이제 왜 느린 지 대답합니다. Windows 업데이트가 사용자에게 눈에 띄는 영향을 줄 이도록 구축되었다는 사실에 기인한다고 생각합니다. BITS 서비스 (백그라운드 인텔리전트 전송 서비스)를 사용하여 업데이트를 확인하고 다운로드합니다.

이 서비스의 초점은 사용자에게 지장을주지 않는 방식으로 작동하는 것입니다. Microsoft는 클라이언트가 매달 업데이트 서비스를 켜거나 끄도록 의도하지 않았기 때문에 의도적으로 속도가 느려집니다.

당신이 볼 수있는 것은 자신의 WSUS 서버 설정을 얻는 것입니다. 이렇게하면 엔터프라이즈 관리자와 거의 같은 방식으로 업데이트를 거부 할 수 있으며 선택한 업데이트를 소유 한 모든 Windows 장치에 적용하거나 거부 할 수 있습니다. 집안일을 줄이면서 선택적으로 업데이트하는 집안일 만들기.


1
이제 생각입니다. 의도적으로 느리다는 것입니다. 이것은 다시 설치 한 직후 업데이트하는 것이 정말 고통 스럽습니다. 이것이 내가 지금 처한 상황입니다. 가능하면 (큰 WSUS 서버를 설정하지 않고) 속도를 높이는 방법이 유용 할 것입니다. 컴퓨터를 사용하기 전에 며칠을 기다리는 것은 좋지 않을 것입니다 ...
Michael Hampton

업데이트를 그대로두고 다운로드 (자동 다운로드하지 않음)로 설정하는 것은 어떻습니까? 이렇게하면 사용 가능한 항목을 선택하여 선택할 수 있으며 먼저 승인하지 않으면 아무것도 설치되지 않습니다. 이 옵션은 모든 기준을 해결하는 것으로 보입니다.
Geruta

그렇습니다.하지만 여전히 기다려야합니다. 그리고 기다려 기다려 기다려 기다려
Michael Hampton

오전 3시에 업데이트를 확인하고 PC를 항상 켜두면 잠자고있을 때 확인하고 다운로드합니다. 완전히 사용 가능하고 깨어날 때 놀 수 있도록 준비하십시오.
Geruta

1
Windows 업데이트를 다운로드하는 타사 도구가 있으며 MBSA 스캔은 매우 빠르며 누락 된 모든 업데이트 목록을 제공합니다. 또한 최근에 RAM이 적은 시스템에 대한 구현의 성능 저하 (및 비 성능)를 인식 한 이후 Windows 7 용 Windows 업데이트 패치 (KB3050265)가있었습니다.
ssnobody

1

Windows Update 및 기타 여러 Windows 시스템 구성 요소는 Microsoft JET Blue 데이터베이스 엔진을 사용하기 때문에 속도가 느립니다.이 엔진은 성능이 크게 저하되어 전체 리소스를 낭비합니다.

다른 사람들이 언급했듯이 Windows Update 코드 자체에는 어느 정도의 재귀가있는 것으로 보이며 업데이트 수가 증가함에 따라 성능이 저하됩니다.


0

다른 데이터 포인트를 추가하기 만하면됩니다. 최근에 Vista PC를 가져와야합니다. Vista를 SP1에서 SP2로 수동으로 업그레이드했지만 업데이트 확인에 시간이 오래 걸립니다. 24 시간 이상 아무 일도 일어나지 않았습니다.

다음 업데이트 설치를 포함하는 솔루션을 찾은 인터넷 검색을 수행했습니다.

http://www.catalog.update.microsoft.com/Search.aspx?q=KB3205638%20vista http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012583%20vista http : // www.catalog.update.microsoft.com/Search.aspx?q=KB4015195%20vista http://www.catalog.update.microsoft.com/Search.aspx?q=KB4015380%20vista

업데이트를 수동으로 다운로드하여 설치 한 후 10 분 동안 업데이트 확인을 실행했는데 200 개의 업데이트가 발견되었습니다. 이것은 Vista 용이지만 Windows 7에서도 비슷한 것이 있다고 생각합니다.


-1

이 문제가 발생하여 새로 설치 한 컴퓨터에서 Windows Update를 처음 밤새 실행하도록했습니다. 이를위한 팁 :

  • 에너지 옵션으로 이동하여 대기 시간을 "never"로 설정하십시오.

  • 자동 Windows 업데이트를 켭니다. 검색 프로세스에도 시간이 걸리기 때문에 기본 시간 인 03:00 AM은 괜찮습니다.

  • "일부 구성 요소를 업데이트하려면 Windows 업데이트가 필요합니다 ..."프로세스를 처음 수행하는 것이 좋습니다 (Windows 7의 경우 200 개가 넘는 업데이트에 비해 빠르게 진행됨)

모든 것이 올바르게 업데이트되면 엄청난 양의 패치 (약 200 개)가 설치되어 있습니다. Windows는 또한 Windows Defender 업데이트 / 스캔을 조각 모음하고 실행했습니다.

그 후 나머지 Windows Update주기 (업데이트 검색-설치-재부팅-업데이트 검색-설치-재부팅-업데이트 검색 ... # 업데이트가 0이 될 때까지)는 훨씬 빠르게 작동합니다.


-1

이봐, 내 이전 답변이 좋지 않다고 생각하지만 PC를 더 빨리 실행하는 방법에 대한 좋은 조언을주었습니다 .Windows 7을 새로 설치할 때 원본을 사용하지만 여전히 슬립 스트림 업데이트 설치 디스크를 사용합니다. 새로 설치 한 직후에 설치하면이 두 가지가 업데이트 검색 및 설치 속도를 크게 향상시킬 수 있습니다.


또한 다음에 추가하고 싶습니다. 다음과 같이 svchost에서 별도의 Windows 업데이트 서비스입니다 .regedit로 이동 한 다음 HKEY_LOCAL_MACHINE> SOFTWARE> microsoft> windowsNT> 현재 버전> svchost로 이동하십시오 .netsvcs 또는 다른 키가 있습니다. 키를 만들고 원하는 이름을 지정하십시오 (예 : "updater"). 새로 생성 된 키에서 netsvcs 키 (2 개의 DWORD 32 비트 및 하나의 기본값)에서 값을 복사합니다. 이 멀티 문자열의 값으로 Windows 업데이트 이름 "wuauserv"의 서비스로 다음 주석에서 다음에.
Choova44

그 후 regedit HKEY_LOCAL_MACHINE> SYSTEM> 현재 제어 세트> 서비스> wuauserv를 연 후 이미지 이름에 svchost -k netsvc에서 svchost -k netsvc "생성 된 키 이름"으로 값을 변경합니다. 그 후 시스템 업데이트 서비스를 다시 시작하십시오. BITS 서비스를 분리하여 리소스 사용량을 확인할 수도 있습니다.
Choova44

32 비트 창을 사용하는 경우 명령 프롬프트에서 "bcdedit / set 증가 된 사용자 va 3072"명령을 입력하는 것도 매우 유용합니다 .KB3065987은 업데이트 클라이언트에 대한 패치이기도합니다. 레지스트리 키 wuauserv에는 ImagePath 값 사면이 없으며 이미지 이름은 내가 설명한 것처럼 변경하지 않습니다.
Choova44

추가 할 내용이 있으면 답변을 편집하십시오. 답변 본문에 있어야하는 설명 만 추가하지 마십시오.
Sami Kuhmonen

-2

해싱은 아니지만 예, 많은 DLL 파일 버전만큼 깊게 검사하고 있습니다. 어떤 시스템을 사용하든 속도가 느립니다.

해결책으로 시스템을 끄고 낮이나 밤에 시스템이 너무 많이 필요하지 않은 경우 전원을 켜고 업데이트를 확인하여 모두 설치하도록하십시오.


4
Windows Update를 끄지 않는 것이 좋습니다. 제로 데이 취약점이 발견되면 Microsoft는 중요한 일정이있을 경우 즉시 일정에 따라 중요 업데이트를 롤아웃합니다. Windows Update가 비활성화 된 컴퓨터는이를받지 못하고 취약한 상태로 남게되며 다른 컴퓨터는 패치가 적용되므로 공격을받을 가능성이 높아집니다.
gronostaj

통계적으로 업데이트는 이러한 방식으로 취약점 예방을 정당화하기에 너무 많은 예외를 만듭니다. ZDV가 발견되면 다른 영향을주지 않고 해당 중요 업데이트를 설치할 수 있습니다.
Overmind
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.