Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

서버 Remoting 개체에게 "참조"를 이용하여 개체를 전달하는 방법이 있을 수 있습니다.
예를 들어 다음과 같은 식이지요.

서버 개체
public void DoDBInsert( CallBackClass aClass )
{

   // 모든 DB 작업을 수행

  try {
      aClass.Test_Connect(); // 클라이언트가 연결되었는지 확인하기 위한 메서드 호출
    } catch ( Exception ex )
    {
      // 모든 DB 작업을 rollback
    }
}

public class CallBackClass : System.MarshalByRefObject
{
   void Test_Connect() {}
}

CallBackClass가 리모팅 개체이므로, 서버 측에서 클라이언트가 연결되었는지에
대한 테스트를 위해서 아무 메서드나 불러주면 되는 것이죠. 만약 정상적으로
호출이 되면 아직도 클라이언트가 살아 있는 것이고, 그렇지 않으면. ^^;

더 좋은 방법을 알고 계신 분들은.... 공유해 주십시오. ^^
예를 들어, Remoting에 의해서 제공되는 클래스들 중에서 IsClientConnected
라는 식의 프로퍼티를 제공해 주는 것이 있다거나... ^^

--
======= (c) .NETXpert ==========
url : http://www.dotnetxpert.com
eml : kevin@dotnetxpert.com
msn: kevin025@magicn.com

MCSD.NET, MVP[VC++]
==============================

"KapRyeong Kim" <ararion@hotmail.com> wrote in message
news:eRZPWMzlEHA.2216@cpmsftngsa05.privatenews.microsoft.com...
> 원격 개체(singleton이나 singlecall)가 자신을 호출한 프록시가 죽었는지 알

> 있는 방법이 있을 까요?
>
> 프록시가 원격 개체를 호출해 놓고 갑자기 죽어버릴 경우(네트웍이 끊겼거나
> 클라이언트가 다운), 호출된 원격 개체는 실컷 일하고 결과를 돌려 주지 못하는
> 경우가 생기는 군요.
>
> 단순히 돌려주지만 못하면 상관없는데.. 원격 서버 DB를 롤백할 방법이
> 막막하군요..
>
> 경험 있으신 분은 알려주시면 감사하겠습니다..
>
>
>









[최초 등록일: ]
[최종 수정일: 6/25/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 31  32  33  34  35  36  37  38  39  40  41  42  43  [44]  45  ...
NoWriterDateCnt.TitleFile(s)
12872정성태12/12/202116773개발 환경 구성: 615. GoLang과 Python 빌드가 모두 가능한 docker 이미지 만들기
12871정성태12/12/202115687오류 유형: 771. docker: Error response from daemon: OCI runtime create failed
12870정성태12/9/202115280개발 환경 구성: 614. 파이썬 - PyPI 패키지 만들기 (4) package_data 옵션
12869정성태12/8/202117810개발 환경 구성: 613. git clone 실행 시 fingerprint 묻는 단계를 생략하는 방법
12868정성태12/7/202116493오류 유형: 770. twine 업로드 시 "HTTPError: 400 Bad Request ..." 오류 [1]
12867정성태12/7/202116176개발 환경 구성: 612. 파이썬 - PyPI 패키지 만들기 (3) entry_points 옵션
12866정성태12/7/202123094오류 유형: 769. "docker build ..." 시 "failed to solve with frontend dockerfile.v0: failed to read dockerfile ..." 오류
12865정성태12/6/202116478개발 환경 구성: 611. 파이썬 - PyPI 패키지 만들기 (2) long_description, cmdclass 옵션
12864정성태12/6/202114141Linux: 46. WSL 환경에서 find 명령을 사용해 파일을 찾는 방법
12863정성태12/4/202116179개발 환경 구성: 610. 파이썬 - PyPI 패키지 만들기
12862정성태12/3/202113892오류 유형: 768. Golang - 빌드 시 "cmd/go: unsupported GOOS/GOARCH pair linux /amd64" 오류
12861정성태12/3/202117881개발 환경 구성: 609. 파이썬 - "Windows embeddable package"로 개발 환경 구성하는 방법 [1]
12860정성태12/1/202113921오류 유형: 767. SQL Server - 127.0.0.1로 접속하는 경우 "Access is denied"가 발생한다면?
12859정성태12/1/202122302개발 환경 구성: 608. Hyper-V 가상 머신에 Console 모드로 로그인하는 방법
12858정성태11/30/202119605개발 환경 구성: 607. 로컬의 USB 장치를 원격 머신에 제공하는 방법 - usbip-win
12857정성태11/24/202116241개발 환경 구성: 606. WSL Ubuntu 20.04에서 파이썬을 위한 uwsgi 설치 방법
12856정성태11/23/202118970.NET Framework: 1121. C# - 동일한 IP:Port로 바인딩 가능한 서버 소켓 [2]
12855정성태11/13/202114230개발 환경 구성: 605. Azure App Service - Kudu SSH 환경에서 FTP를 이용한 파일 전송
12854정성태11/13/202116349개발 환경 구성: 604. Azure - 윈도우 VM에서 FTP 여는 방법
12853정성태11/10/202114776오류 유형: 766. Azure App Service - JBoss 호스팅 생성 시 "This region has quota of 0 PremiumV3 instances for your subscription. Try selecting different region or SKU."
12851정성태11/1/202116509스크립트: 34. 파이썬 - MySQLdb 기본 예제 코드
12850정성태10/27/202118296오류 유형: 765. 우분투에서 pip install mysqlclient 실행 시 "OSError: mysql_config not found" 오류
12849정성태10/17/202117871스크립트: 33. JavaScript와 C#의 시간 변환 [1]
12848정성태10/17/202117013스크립트: 32. 파이썬 - sqlite3 기본 예제 코드 [1]
12847정성태10/14/202117708스크립트: 31. 파이썬 gunicorn - WORKER TIMEOUT 오류 발생
12846정성태10/7/202118758스크립트: 30. 파이썬 __debug__ 플래그 변수에 따른 코드 실행 제어
... 31  32  33  34  35  36  37  38  39  40  41  42  43  [44]  45  ...