2

드문 문제가 생겼습니다. 클라이언트는 3 개의 상점을 보유하고 있으며 웹 응용 프로그램 은 각 상점을 따로 관리하기를 원합니다. 이것은 일반적인 멀티 테넌트 방식이지만, 이 추가 요구 사항입니다. 클라이언트는 인터넷 연결에 의존하고 싶지 않습니다. 따라서 2 개의 솔루션을 생각해 볼 수 있습니다. 두 서버 모두에 데이터베이스가 1 인스턴스이고 실행중인 응용 프로그램이 1 인스턴스 인 각 에 서버가 있어야합니다. 인터넷 연결이 실패하면 클라이언트는 응용 프로그램 로컬 인스턴스를 사용할 수 있습니다.ruby ​​on rails를 사용하여 세입자 당 하나의 데이터베이스를 사용하는 방법

  • 비동기 데이터베이스 복제 - 각 점포 로컬 데이터베이스는 온라인 서버 데이터베이스의 복제본입니다.

  • make rails는 선택한 상점에 ​​따라 다른 데이터베이스에 연결합니다. 이 경우 응용 프로그램 온라인 인스턴스가 연결되는 로컬 데이터베이스는 3 개 (각 저장소에 하나씩)입니다. Guy's speech을보고 magic_multi_connections (magicmodels.rubyforge.org/magic_multi_connections)에 대해 읽었지 만 오래된 것으로 보입니다. DbCharmer이 가능한 해결책 인 것으로 보이지만 해결할 수 있을지 확실하지 않습니다. 관련

    다른 게시물 :

    • railsforum.com/viewtopic.php?id=48435
을 stackoverflow.com/questions/1825844/multiple-databases-in-rails

이 경우 최상의 아키텍처를 알고 싶습니다. 너는 무엇을 할 것이냐? DbCharmer 개발자 올렉시 Kovyrin에 의해

+0

세 명의 임차인 만있을 테니 저는 heroku에 3 개의 시스템 인스턴스를 설치하기로했습니다. 각 인스턴스는 상점 중 하나에서 데이터베이스에 액세스합니다. heroku에있는 다른 데이터베이스를 사용할 수있는 인스턴스를 전달하려면 establish_connection을 사용하여 StoresTransactions 클래스가 액세스하는 데이터베이스를 변경합니다. – Gus

답변

1

Answer :
이 "를 사용하여 멀티 과정에서 AR을 사용 ..if (단일 스레드) 환경, 클라이언트 별 별도의 연결을 갖는 사건이 확실히 가능하다 .."

+0

Glassfish 또는 Jetty와 같은 표준 서버의 경우는 어떻게됩니까? RoR을 처음 사용했지만 성능 향상으로 인해 일부 서버가 멀티 스레드 일 수 있다고 생각합니까? – Gus