Microsoft MVP성태의 닷넷 이야기
wcf IsOneWay 속성관련 문의 입니다.. [링크 복사], [링크+제목 복사],
조회: 14701
글쓴 사람
김동미 (dorrex at nate.com)
홈페이지
첨부 파일
 

        [OperationContract ]
        string CallTest(); ---------------------------// "test" 라는 단순 문자열를 리턴해 주는 함수

          
        [OperationContract (IsOneWay = true)]
        void CallTest2 ();

===========================================================


위의 서비스 선언시, 장시간 서비스 요청을 사용하는 경우 IsOneWay 속성에 따라 다른 결과가 나오는거 같아,

문의를 드립니다. 우선 제가 알기로,,IsOneWay속성을 사용하는 것은 서비스와 클라이언트 간의 통신시, 리턴을 받지 않음으로써 좀더 서비스 요청 작업이

가벼워? 지는것으로 알고 있습니다.

장시간 단순 통신 테스트를 하는 결과, CallTest2 함수 같은 경우는 전혀 부하를 받지 않지만, CallTest() 같은 경우 특정시간 경과시 서비스측은 살아있지만,

서비스를 요청하는 클라이언트쪽은 프로그램 멈춤과 함께,, 좀더 시간경과시 네트워크 리소스 부족 메세지와 함께 멈춰 있습니다.

(이경우 끊어버리고 다시 컨넥트를 시도하나, 컨넥트 되지 못함,,)


1. 서비스 요청후 string 을 리턴받는 부분에서 어떤 특정한 부분이 계속적으로 쌓이는 것인지,, 이는 해제 가능한지,,
2. 서로 다른 개념이지만,, 만약 콜백으로 처리하는 함수와, 단순 반환인자가 있는 함수를 호출할때 돌아오는 결과값은 둘다 비슷한 루틴이다 라고 볼수 있는건지,,

( 콜백으로 처리하는 경우, 클라이언트 -> 서비스 후에, 서비스 -> 클라이언트로 접근시 다른 스레드로 돌아오게 되고, 이때 동일한 함수를 다른 클라이언트가

사용하고 있는 경우 데드락에 빠질수 있다고 알고 있습니다,,,)


==========================================================================


에러내용: net.tcp://"주소"에 보낸 이 요청 작업이 구성된 시간 제한(00:01:00) 내에 회신을 받지 못했습니다. 이 작업에 할당된 시간이 보다 긴 시간 제한의 일부일 수 있습니다. 서비스가 아직 작업을 처리 중이거나 서비스가 회신 메시지를 보낼 수 없었기 때문일 수 있습니다. 채널/프록시를 IContextChannel로 캐스팅하고 OperationTimeout 속성을 설정하여 작업 시간 제한을 늘리고, 서비스가 클라이언트에 연결할 수 있는지 확인하십시오.

테스트 설정 부분
클라이언트 Proxy 배열을 10개 정도 생성하여 사용. ( 서비스에 10개 붙여서 계속적으로 CallTest 호출하도록 테스트 )
클래스 설정시 : [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, ConcurrencyMode = ConcurrencyMode.Reentrant)]
호스트 오픈시 ReliableSession 속성을 사용하여 설정


검색및 문의 결과 - (이 속성들 변경시에도 큰 변화는 없었습니다)
1.ReliableSession 속성을 사용해 보십시오..
2.Timeout 시간설정 부분들 변경.
3.서비스 클래스 설정시 ConcurrencyMode.Multiple 로 설정한다..








[최초 등록일: ]
[최종 수정일: 4/18/2011]


비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  22  23  24  25  26  27  28  [29]  30  ...
NoWriterDateCnt.TitleFile(s)
5155세퉁5/7/201910447관리자 권한으로 실행 시 알림창(?) 없이 바로 실행 시킬 수 있는 방법이 있을까요?? [2]파일 다운로드1
5154Soul...5/4/20197317NamedPipe 질문드립니다. [2]
5153개태5/4/20198284WCF RESTful Service에서 enum을 parameter로 쓰는방법 [2]
5152세퉁5/3/20199397인터넷 시간을 불러와 pc에 적용 시키고 싶습니다. [3]파일 다운로드1
5151이대희5/3/20197509C# 7.3으로 개정판 출간 계획이 있으신가요? [1]
5150김이현5/2/20198904C# 딕셔너리 생성에 대해 질문드립니다. [1]
5149민성5/1/20197153ftp 이미지 업로드중 [1]
5148wpf질문4/30/20197504특정 사이트를 wpf에서 popup을 항상 허용하게 할려면 어떻게 해야할까요? [5]
5147민성4/30/20196509wpf에서 작업관리자를 띠울려면 어떻게 해야 하나요? [1]
5146불파겐4/25/20196575하나의 필드를 여러 스레드에서 읽어갈 때 스레드 동기화를 하지 않으면 문제가 생길까요? [2]
5145e구름4/17/20199534Properties.Setting.Default값에 대해 질문드립니다. [2]
5144성태님 ...4/17/20196779질문하시기 전에 10000 페이지 오류 납니다. [1]
5143헌이4/16/20197704윈도우 작업표시줄에 프로그램 띄우기 [2]파일 다운로드1
5142cab2...4/9/201913284C#으로 만든 DLL 배포하기 [10]
5141하늘사랑4/5/20198143Axinterop 래퍼에 관해서 질문드립니다. [7]
5140게스트4/1/20197775안녕하세요. 초보 개발자입니다. SD리더기에서 SD카드를 꽂으면 발생하는 이벤트 문의 [2]
5139김이현3/28/201910994C#에서 CRON 같은 스케줄러를 사용하려면 어떻게 해야 하나요? [3]
5138김지원3/22/20198621유니티 쉐이더에서 오로지 포워드 애드 패스로만 만들 수 있을까요? [1]
5137세퉁3/22/201910572wpf 쓰레드에 대해 질문 있습니다. [4]
5136KGY3/13/20197222안녕하세요 닷넷코어 콘솔 프로그램 관련 질문입니다. [1]
5135러쎌3/13/20197675ASP.NET 공부 관련해서 문의를 드립니다. [1]
5134이정호3/12/20197072SampleProfiler 예제를 이용한 Class 객체의 접근 문의 [1]파일 다운로드1
5133ㅇㅇ3/12/20197976멀티코어사용 방법에 궁금한것이 있습니다. [3]
5132존기미3/3/20198230Physical Disk Access문의 [1]
5131강용규2/25/20197340c# 개발자입니다. 타이머 질문드립니다. [1]
5130노인코래방2/25/201910881C#에서 가장 좋은 성능을 보이는 파일 읽고 쓰는 방법이 무엇인가요? [2]
... 16  17  18  19  20  21  22  23  24  25  26  27  28  [29]  30  ...