먼저 리모팅(Remoting)을 이용하기 위해 1. 원격 객체를 작성한다. 2. 원격 객체를 Remoting 서비스할 Tcp, Http 채널을 각각 열어주는 서버를 제작한다. 3. 원격 객체를 다루게 될 Client를 Tcp, Http로 각각 작성한다. 위와 같은 순서로 프로젝트 4개를 작성하고 서로 원격 객체를 참조하고 리모팅 어셈블리를 참조해서 구현하게 됩니다. TCP, HTTP 각각 체널에서 원격 프록시 객체(Remoting Proxy)를 생성하는 방법은 SAO 방법중 Activator.GetObject()를 사용하였다. 위의 예제 코드는 첨부 파일에 포함되어있습니다.
활성화와 프록시 객체의 개요 원격 객체 활성화 방법 서버 활성화 객체(SAO: Server Activated Object) - Well Known 객체라고도 함 SingleCall 방식 함수 호출 요청이 있을 때마다 객체 생성 Singleton 방식 클라이언트 함수 호출 요청이 있을 때 단 하나의 객체를 생성한 후 하나의 객체를 공유 클라이언트 활성화 객체(CAO: Client Activated Object) 서버 활성화와 클라이언트 활성화 서버에 의해서 원격 객체가 자동으로 만들어지면 서버 활성화 기법이라고 한다. 클라이언트에서 프록시 객체를 만들 때 원격 객체가 만들어지면 클라이언트 활성화 기법이라고 한다. 클라이언트의 프록시 클라이언트에서는 원격 객체를 참조하기 위한 가상의 객체를 만들게 되는데 이..
기존에 잘 알려져있는 ERWIN이나 ROSE 등을 제쳐두고 오늘 급 관심이 생기게 된 프로그램이 있다. http://www.fabforce.net/ 요 사이트에 가면 있는 프로그램.. 다이어그램을 그리고 DB와 연결시켜서 동기화 시킬 수 있다. 또한 쿼리문을 직접 작성하기도 편하다.. 아 멋지다.. 테이블 조인할건지.. 레프트 조인할건지.. 쿼리문을 뭘 만들건지 ㅋㅋ 아무튼 자주 사용해야 할 것 같다. 디자인도 이쁘고 :) 단, 아쉬운 점이 있다면 MySQL 을 제외한 DB에서는 가져오는 것만 지원하는 듯 하고, MySQL 외에는 싱크하는 기능이 제대로 작동하지 않는 것 같다(MSSQL을 이용했을 때 '역 공학'을 이용해 가져오기는 제대로 실행되지만, Sync 기능은 제대로 작동하지 않았다)