나는 각 기술에 대해 개별적으로 질문했으며 실제로는 적절한 대답을 찾지 못했습니다.복제 대 Sync Framework vs Service Broker
중앙 사무소에 SQL Server 2005 Enterprise를 실행하는 서버가 있습니다.이 서버에는 각 위치에서 로컬 복사본이 필요한 몇 가지 대형 (DSL이 제한적인 의미에서 큰) 데이터베이스가 있습니다. 현재 수십 곳이 있으며 온라인을 더 많이 가져올 필요가 있습니다. 이러한 데이터베이스를 동기화하는 데 필요한 총 위치 수는 향후 2 년 내에 수백 개가 될 것입니다.
우리는 각 위치에서 WAN 연결 문제를 극복하려고 노력하고 있습니다. 이것들은 DSL 라인이며 그 위치에서의 배선이 항상 최선은 아닙니다. 우리는 현재 매 시간마다 자주가는 일부 지역에 문제가 있습니다. 우리는 지역 전화 회사의 재선 및 지원을 통해 이러한 문제를 해결하기 위해 노력하고 있지만 주로 문제를 집중 조명합니다. 간혹 연결되는 것을 처리 할 수있는 양방향 동기화가 필요합니다.
우리는 잠시 동안 트랜잭션 복제를 시도했지만 시간이 많이 걸렸지 만 유지 보수가 너무 어려워서 가능한 설명이없는 임의의 오류가 자주 발생하여 구독을 다시 초기화해야했습니다. 위치가 한 번에 전체 스냅 샷을 가져올 수있을만큼 길게 연결된 것으로 가정 할 경우 4 시간 이상 소요). 우리는 처음부터 우리 자신의 솔루션을 구상 해 보았습니다 만, 우리가 필요로하는 규모와 신뢰성을 고려할 때 이것이 최고의 아이디어라고 생각하지 않습니다.
지금까지 Sync Framework와 다른 사람이 제안한대로 Service Broker를 살펴 보았습니다. Sync Framework가 더 적합하다고 생각되지만 Service Broker가 확장되고 더 안정적이라는 말을 들었습니다. Sync Framework 또는 Service Broker와 관련된 오버 헤드에 대한 경험적 데이터를 찾을 수 없으므로 두 점을 비교하는 것은 불가능합니다.
중앙 관리 서버와 원격 클라이언트 간의 양방향 동기화가 필요합니다.이 클라이언트는 자율적으로 실행될 수 있으며 우리의 개입이 필요한 장애 발생시 관리자에게보고 할 수 있습니다.
이 문제에 대한 가능한 많은 해결책이 있습니다. 모두 완전히 다른 기술을 포함하고 있으므로 이에 대한 새로운 시각이 필요합니다.
우리 상황에 맞는 최적의 솔루션은 무엇이라고 생각하십니까?
편집 : 분명히 SQL Server 2008로 업그레이드하면이 문제가 쉽게 해결됩니다. 그러나 우리는 저렴한 옵션을 먼저 시도하고 싶습니다.
답장을 보내 주셔서 감사합니다. 나는 v1의 동기화 프레임 워크에서 비슷한 문제를 들었지만 아직 v2는 없다. v2에는 이제 표준 SQL Server 인스턴스를 포함하는 SyncAdapters와 자체 어댑터를 만들기위한보다 추상화 된 클래스가 포함되어 있다고 생각합니다. – Matt
우리는 v2를 사용했습니다. 기본적으로 지원되는 유일한 클라이언트 데이터베이스는 여전히 SQL CE입니다. 물론, 당신 자신의 어댑터를 작성하는 것은 로켓 과학이 아니기 때문에 이것은 아마도 프레임 워크의 문제 중 가장 적은 것이다. – jalf
에 따라 u @ jalf 무엇이 C# 4.5에 대한 동기화 프레임 워크의 교체 것입니까? – Neel