2014-05-17 4 views
2

PouchDB에서 continuous (실시간) 복제를 설정 한 후 CouchDB에서 _replicate 또는 _replicator의 활성 작업을 어떻게 찾을 수 있습니까?PouchDB - 라이브 복제 중지

아니면 어떻게 취소합니까?

답변

0

의사 코드 :

= db.replicate.from에서

VAR (remoteDB, {라이브는 true});

from.cancel();

+0

감사합니다. 그렇지만 복제 기능의 결과에 대한 액세스 권한이없는 경우 지속적인 복제를하는 것과 더 비슷합니까? – Daniel

+1

현재이 작업을 수행 할 방법이 없습니다. 하지만 아날로그가 CouchDB에 존재하기 때문에'PouchDB.getActiveTasks() '또는 무엇인가를 구현하는 데 관심이 있다고 생각합니다. – nlawson

+0

Hi Nolan, cancel()이 실제로 복제를 중지시키고 (작업 및 할당 된 리소스를 지우는) 복제 알림/변경 수신을 중지합니까? 그 이유는 장치 (모바일 앱)가 온라인 또는 오프라인 상태가 될 때마다 연속 복제를 시작하고 중지해야하기 때문입니다. 이러한 이벤트는 때때로 발생하며 복제 리소스가 해제되지 않는 것처럼 보입니다. 이는 내 앱의 버그 일 수도 있지만 여전히 조사 중입니다. –

1

또 다른 옵션은 pouchdb-persist을 사용하는 것입니다 그리고 당신은 할 수 있습니다 :

var db = new PouchDB('todos'); 
var persist = db.persist({ url: 'http://localhost:5984/todos' }); 

하고 나중에 : 다음

persist.stop(); 

하고 나중에 :에 따라

persist.start(); 

을 아니면 유스 케이스의 경우 기본 기능인 pouchdb-persist을 사용할 수 있습니다.