2009-11-24 4 views
0

나는 asp.net MVC 웹 사이트의 집합에 대한 요구 사항이 있습니다데이터 집계는 다음과 같이 여러 개의 웹 사이트, 하나의 수퍼 유저 사이트

  1. 여러 사이트를 동일한 코드베이스를 사용하지만 각 사이트는 별도의있을 것이다 데이터베이스 (요구 사항)이며 사용자는 로그인하여 데이터를 입력합니다.

  2. 슈퍼 유저를위한 단일 사이트로 로그인하여 각 개별 사이트에서 집계 된 데이터에 대해 작업합니다.

포인트 1의 사이트 수는 더 많은 고객에게 공개 할 때 늘어날 수 있습니다.

제 질문은 위의 아키텍처에 대한 것입니다. 데이터 집계를 관리하는 방법은 실시간이어야합니다. 데이터베이스 레벨 (예 : 본질적으로 개별 사이트 데이터베이스의 통합 인 뷰) 또는 애플리케이션 레벨에서이를 유지 관리합니까?

몇 인프라 포인트 :

  1. 우리는 데이터베이스 서버 및 데이터베이스의 이름을 완벽하게 제어 할 수 있습니다.

  2. 모든 웹 사이트는 우리가 관리하는 서버에 배포됩니다.

나는 이전에 이런 일을했을 수도있는 사람들의 의견이나 제안에 감사드립니다.

답변

0

데이터 집계가 완전히 실시간이어야하거나 거의 실시간으로 벗어날 수 있습니까? "거의 실시간"이 수용 가능한 경우 사이트 데이터베이스의 데이터를 단일 중앙 데이터베이스에 수집하는 서비스 응용 프로그램을 작성할 수 있습니다. 프로세스가 지속적으로 실행되고 지연 시간에서 데이터를 수집 할 사이트가 너무 많지 않은 경우 사용자에게 보이지 않게해야합니다.

모든 데이터베이스에서 데이터를 누적하는보기가 좋은 해결책처럼 들리지 않습니다. 뿐만 아니라 매우 느릴뿐만 아니라 새 사이트를 추가 할 때마다보기를 업데이트해야합니다.

슈퍼 유저 사이트의 의도는 무엇입니까? btw? 보고 전용입니까 아니면 수퍼 유저가 모든 사이트에서 데이터를 편집해야합니까? 그것은 당신이 선택한 솔루션에 영향을 줄 수 있습니다.

+0

보기와 편집 모두 가능합니다. 나는보기에 대한 귀하의 의견에 동의합니다, 그것은 천천히있을 수 있습니다 ... – Paddy

+0

당신은 중앙 데이터베이스에서 정보를 집계했지만 다른 사이트를 편집하는 사이트 데이터베이스에 직접 연결되어있는 혼합 된 솔루션을 갈 수도 있습니다 데이터. 이렇게하면 사용자에 대해 두 개의 활성 데이터베이스 연결을 수행하면 쉽게 완료 할 수 있습니다. 하나는 공유 데이터베이스에 대한 정적 연결 문자열을 사용하고 다른 하나는 로그온 한 사용자에 특정한 연결 문자열을 사용합니다. –

관련 문제