많은 비교를 설명하는 SO에 대한 많은 질문이 있지만 다른 것을 고수하고 있습니다.싱글 톤 또는 싱글 콜 .Net Remoting
저는 DAL 메서드를 실행하는 클래스 DataAccess
(연결 프록시를 보유하고 있기 때문에)을 가지고 있습니다. 지금까지는 좋다.
- DATAACESS 1 서버에서 데이터를 제공합니다 -이 :처럼 이제 우리는 주어진 조건이 데이터베이스에서 데이터를 결합하기로 결정했습니다 , 그래서 기본적으로는되어야한다.
- DataAcess는 두 번째 서버의 데이터를 가져옵니다.
- 결과가 결합되어 표시됩니다.
를 ConnectionString은 DataAccess
의 생성자에서 설정되고, 나는 그것이 SingleCall
로 구성되어 있기 때문에이 서버 1에 얹혀 서버 2를 가리 키도록 내 연결 문자열을 변경하는 경우에도 DataAccess
이제, SingleCall
로 구성되어 있습니다.
이것은 생성자가 DataAccess
의 메서드 (삽입, 업데이트, 삭제, 선택 ...)에 액세스하려고 할 때마다 실행되기 때문에 발생합니다.
나는 Singleton
을 사용하여이 문제를 해결할 수 있음을 알고 있지만 사람들이 옹호하는 SingleCall
을 여러 곳에서 읽었습니다.
Singleton
으로 만들면 발생할 수있는 문제에 대한 의견을 공유해주십시오. 다른 방법이나 디자인 패턴이 도움이 될 수 있습니다.