VB.NET, 3.5 Framework를 사용하고 있습니다.WCF 서비스가 현재 값을 반환하지 않습니까?
콘솔 응용 프로그램으로 실행되는 WCF 서비스를 만들었습니다. 내 워크 플로우 엔진을 청취하는 이벤트를하고 있습니다.
내가하려고하는 두 번째 응용 프로그램은 서비스를 모니터링하고 엔진 작업자의 현재 상태를 되돌릴 수있는 WinForm입니다.
서비스에 잘 연결할 수 있으며이를 통해 내 서비스가 설정 될 때 값이 설정된다는 것을 확인했습니다 ... 그러나 모니터가 서비스를 호출 할 때 값을 반환하는 것처럼 값을 반환합니다. 도망 간다 고요? (기본값이므로 현재 값이 아님)
어떤 아이디어가 잘못 되었나요? 내 WFE는 멀티 스레드이므로 서비스 인터페이스를 싱글 톤 패턴으로 만들 필요가 있는지 궁금해했다.하지만 그렇게하기 전에 쉽게 이해할 수없는 뭔가를 놓치고 있는지 확신 할 수 없다.
서비스 호출로 모니터를 탐색하면 서비스 코드로 점프되지만 변수와 개체가 현재 상태를 표시하지 않습니다.
나는 싱글 톤 서비스 인스턴스를 사용하지 않고있다. 나는 그게 문제라고 추측하고있다. 어떻게 강제 할 수 있습니까? 바라건대 이것은 더 명확합니다. - 이벤트 처리로 실행되는 콘솔 앱. 이벤트는 설정된 기준 (하트 비트)으로 실행됩니다. 이것은 내가 하트 비트를 추적하는 클래스에 WCF 서비스 인터페이스를 실행하고있는 곳입니다. - 별도의 윈폼 응용 프로그램이 현재 작업자 (이벤트를 발생시키는 사람)의 목록을 가져올 수 있도록 WCF 서비스와 통신하려고합니다.) 이전 질문에서이 모델을 수행하는 가장 좋은 방법을 물었고 WCF가 권장되는 옵션이었습니다. 다른 것을 사용해야합니까? – RiddlerDev
아니요,하지만 실제로는 불가능한 일을하려고합니다. WCF에서 서비스 클래스 인스턴스는 요청을 처리하는 동안 짧은 시간 동안 만 "활성"상태가됩니다. 대부분의 경우, 그들은 존재조차하지 않기 때문에, 당신이 여기서 모니터하고 싶은 것을 정말로 모르겠습니다. 또한 - 왜 모니터하고 있습니까? WCF에는 성능 카운터가 수천 가지 있습니다.이 카운터는 여러분이 알고 싶어하는 모든 것을 모니터링 할 수 있습니다! 그것들을 사용하십시오 - 훨씬 쉽게! –
우리는이 프로그램을 모든 프로그램의 상태를 원격으로 모니터링 할 수있는 관리 프로그램에 추가합니다. 따라서 서비스의 현재 상태를 호출자에게 다시 전달할 방법이 없습니다. – RiddlerDev