2017-12-19 2 views
0

문제 설명 :사용자 이름 및 암호없이 네트워크 내의 Windows 컴퓨터에 알립니다.

로컬 네트워크 내에 20 대의 Windows 컴퓨터가 있다고 가정합니다. 머신 중 하나가 서버 역할을하고 데이터베이스를 호스팅합니다. 이제 다른 19 대의 컴퓨터는 서버 컴퓨터에서 읽을 수있는 액세스 권한을 갖지만 서버 컴퓨터에는 다른 19 대의 컴퓨터에 대한 사용자 이름과 암호가 없습니다.

모든 컴퓨터에 설치된 데스크톱 응용 프로그램을 업데이트해야합니다. 빌드를 다운로드하는 서버 컴퓨터에서 호스팅되는 스프링 부팅 응용 프로그램이 있습니다. 이제 빌드를 다운로드하자마자 빌드 된 다른 19 대의 시스템에 모두 다운로드하여 자신을 읽고 업데이트 할 수 있음을 통지해야합니다.

  • 해결 방법 1 : 서버를 폴링하고 업데이트를 사용할 수 있는지 확인하는 Windows 서비스를 설치하십시오.

  • 해결 방법 2 : 19 대의 컴퓨터에서 POST 웹 API를 호스팅하고 사후 통화를 통해이를 알립니다. 모든 컴퓨터에 IIS 또는 Tomcat을 설치하는 것이 실용적이지 않다고 생각합니다.

클라이언트에게 알리는 다른 최적의 솔루션이 있습니까?

참고 : RDP를 사용할 수없고 자격 증명도 없지만 다른 19 개의 클라이언트에 이미 배포 된 Windows 응용 프로그램을 사용할 수 있습니다.

+0

해결책 1은 일반적인 방법입니다. 그것을 위해 가라. – Oliver

+0

@Oliver 여기 상황은 우리가 3 개월에 한 번 업데이트해야한다는 것입니다. 그리고 보통, 오전 1 시부 터 새벽 2 시까 지 업데이트 할 시간대가 있습니다. 3 개월에 한 번 예정된 작업에 대해 매 10 분마다 설문 조사를하는 Windows 서비스를 유지하는 것이 잔인하다고 생각하지 않습니까? –

답변

1

해결 방법 3 : 컴퓨터가 동일한 도메인을 공유하는 경우 msi install packages to update software all across domain by using Group Policy을 사용하십시오. 일반적인 방법입니다.

해결 방법 4 : 서버 공유 폴더에서 직접 데스크톱 응용 프로그램을 시작하십시오. 서버 시스템이 항상 액세스 가능하고 응용 프로그램이 LAN에 너무 무거울 때 잘 작동합니다.

여기에서는 클라이언트 컴퓨터에서 실행되는 동안 새 응용 프로그램 파일을 작성하는 데주의해야합니다.

v1.3\app files here 
v1.4\app files here 
v1.4.6\app files here 
v1.7\app files here 
app.lnk → v1.7\app.exe 

클라이언트 컴퓨터가 app.lnk와 응용 프로그램을 실행 : 좋은 방법은 다른 버전에 대해 다른 폴더를 유지하고 바로 가기 최신 하나를 가리키는으로 시작하는 것입니다.

업데이트 : 아무도 작동하지 않을 때 응용 프로그램을 업데이트하면 (오전 1시 ... 오전 2시 참조)이 버전 정보를 모두 생략 할 수 있습니다.

해결책 1 : 잘 작동합니다. NSSM을 사용하면 업데이트 스크립트 나 exe 파일을 Windows 서비스로 쉽게 시작할 수 있습니다.

+0

그리고 해결책 5, 물론 : 업데이트 작업의 예정된 출시. 'at' 명령어 나 [Windows Task Scheduler] (https://en.wikipedia.org/wiki/Windows_Task_Scheduler) GUI를보세요. –

0

Windows 서비스 또는 예약 된 작업 (둘 다 제공 한 동일한 응용 프로그램이 될 수 있지만 일부 인수가있을 수 있음)을 사용합니다. 새 버전을 사용할 수 있는지 자주 확인합니다 (하루에 한 번만).

모든 시스템에 새 버전을 설치해야하는 짧은 시간의 프레임 만있는 경우 설치 날짜에 새 버전을 제공 할 수도 있습니다. 클라이언트가 현재 설치된 버전 번호를 보내고 서버가 상태 코드 200으로 응답하는 REST API를 통해 검사가 수행되고 본문이 비어 있거나 새 버전 번호, 기한 및 날짜가 포함 된 json 객체를 제공합니다. 다운로드 URL.)

그러면 클라이언트는 이미 새 버전을 다운로드하여 컴퓨터에서 사용할 수있게 만들 수 있지만 만기일에 도달하면 설치가 시작됩니다. 이 기한 확인은 더 자주 발생할 수 있습니다. 모든 정보가 이미 클라이언트 시스템에 있고 로컬에서 수행 될 수 있기 때문입니다.

관련 문제