Google 팀을위한 샌드 박스 환경 설정과 관련하여 커뮤니티에서 가장 권장할만한 것이 무엇인지 궁금합니다.mongodb 중복 테스트 환경 설정
현재 우리는 테스트 및 전개 환경 각각에 대해 두 개의 별도 MongoDB 인스턴스 (둘 다 3 개의 구성원 복제본 세트)를 사용합니다. 테스트 환경의 모든 데이터는 거의 폐기되었으며 애플리케이션을 테스트하는 과정에서 개발자가 만든 것입니다.
실제 라이브 데이터로 테스트 할 수있는 새로운 옵션을 별도의 안전 샌드 박스 인스턴스에 제공하고 싶습니다. 처음에는 데이터를 야간에 새 데이터베이스로 옮기고 개별 개발자 앱 서버를이 데이터베이스에 연결하기 위해 copyDatabase
명령을 사용할 수 있다고 생각했습니다. 문제는 시스템에 엄청난 GridFS 데이터가 있고, 이와 같이 복제하면 디스크 I/O가 낭비되고 더 작은 클라우드 인스턴스에서 실행된다는 것입니다.
특히 더 나은 대안이 있다면이 경로를 조심해야합니다.
예를 들어 슬레이브로만 작동하는 배포 복제 집합의 네 번째 구성원을 설정하고 모든 쿼리를 slaveOkay = True
으로 설정하고 해당 개별 노드에 대해 테스트를 실행할 수 있습니까? 이것이 다른 회원들에게 전파됩니까? 삽입물은 어떻게 처리됩니까?
내가 제안하는 것은 비효율적 일 수 있습니다. 특히 네트워크 전송을 낭비하는 네트워크를 넘겨야하는 경우 특히 그렇습니다. 누구도 비슷한 문제를 해결해야만 했습니까? 감사!
답장을 보내 주셔서 감사합니다. 현재 우리는 unittest 모듈을 사용하여 테스트 db를 생성하고 있으므로 아마도 "테스트"로 설정하려고 시도했던 db를 참조하는 것은 잘못된 이름 일 것입니다. 내가 한 것은 당신이 언급 한 준비 서버였습니다. – DeaconDesperado