2011-05-06 1 views
9

사용자 지정 프로토콜을 구현 한 Windows 서비스 (.net)가 있습니다. 다중 데스크탑 클라이언트 (패킷 도착, 거부, 오류 등)에서이 서비스를 모니터해야합니다.여러 클라이언트의 Windows 서비스를 모니터/관리하는 가장 좋은 전략은 무엇입니까? (C#)

다른 대안 (리모팅, 소켓 멀티 캐스트 등)을 평가하고 있지만,이 문제에 대한 해결책과 표준 해결책이 있는지 알고 싶습니다. 저는 이것이 매우 일반적인 시나리오라고 생각합니다. IIS, 서비스되는 구성 요소 등과 같은 서비스에서 생각하면 여러 클라이언트의 원격으로 동시에 연결할 수 있고 서비스를 관리 할 수 ​​있습니다.

제안과 예제를 고맙게 생각합니다.

미리 감사드립니다.

+0

가능한 중복 : [Windows 서비스와 통신] (http://stackoverflow.com/questions/3294502/communicating-with-a-windows-service), [Windows 서비스와 통신하는 방법] (http :/GUI와 Windows 서비스 통신 (http : // stackoverflow.). com/questions/1773046/gui-and-windows-service-communication)을 참조하십시오. 대부분의 대답은 ** WCF **가 가장 적절한 전략이라고 제안합니다. 일단 구성하면 사용하기가 매우 쉽습니다. – Groo

답변

2

간단한 구현은 Custom Commands을 사용하는 것입니다.

그런 다음 WMI를 사용하여 사용자 지정 명령으로 서비스를 관리 할 수 ​​있습니다.

+0

이 사실을 모르는 경우 흥미로운 해결책이 될 것 같습니다. –

+0

@Ariel, @Aliostad : 서비스를 모니터링하려는 의도가 있다면 어떻게 작동하는지 모르겠습니다. 추가 매개 변수없이 클라이언트에서 서비스 방향으로 최대 128 개의 다른 "명령"만 전달할 수 있습니다. 이런 식으로 서비스에서 아무 것도받을 수 없으므로, 내가 답을 찾을 때 뭔가를 놓치지 않으면 모니터 할 수 없습니다. – Groo

7

SNMP. 위키 피 디아에서

견적 (I는 흥미로운 부분을 강조했습니다) :

SNMP (Simple Network Management Protocol)는 IP 네트워크에서 장치를 관리 할 수있는 "인터넷 표준 프로토콜입니다 일반적으로 SNMP를 지원하는 장치가 포함되어 있습니다. 라우터, 스위치, 서버, 워크 스테이션, 프린터, 모뎀 랙, 그리고 더. "관리주의를 요하는 조건 네트워크에 연결된 장치를 모니터링하는 네트워크 관리 시스템에서 주로 사용되는 1

,

C# 구현 : http://www.snmpsharpnet.com/

+0

소원 나는 하나 이상의 upvote를 캐스팅 할 수 있었다. 링크 된 프로젝트를 큰 관심과 함께 보게 될 것입니다. –

+0

안녕하세요 jgauffin, 저는 SNMP에 대한 경험이 있습니다. 매우 복잡합니다. 내 서비스는 SNMP보다 단순한 프로토콜을 사용하여 네트워크 장치를 관리하는 것입니다. SNMP는 서비스를 관리하는 것이 아니라 서비스 뒤에있는 장치를 관리하는 것입니다. –

+0

처음에는 복잡해 보입니다. 동의합니다. 그러나 그 모든 숫자는 좋은 이유를 위해 명시되어 있습니다. 코드 예제 (CodeProject for instancE)를 살펴보면 아무 마법이 없다는 것을 알 수 있습니다. 보너스 측면은 고객이 모든 SNMP 모니터 응용 프로그램을 사용하여 응용 프로그램을 추적 할 수 있다는 것입니다. 그리고 *** *** 큰 판매 지점입니다. – jgauffin

관련 문제