2016-12-02 3 views
0

~ 300k 개의 작업이 포함 된 Firebase Queue가 있습니다. 그래서처럼 구성 :Firebase Queue에 남아있는 작업 수를 보려면 어떻게합니까?

const db = getDatabase() 
const scrapeQueueRef = db.ref('/queue/taskQueue') 
const queue = new Queue(scrapeQueueRef, (data, progress, resolve, reject) => { 
    // do things 
    resolve() 
}) 

나는 new Queue 호출이 전체 노드를 다운로드 (데이터베이스 대역폭 측정 기준) 노동자 작업을 완료로 메모리를 유지하고있다 생각합니다.

이미 메모리에 있기 때문에 대기열에 남아있는 작업 수에 액세스 할 수 있습니까? scrapeQueueRef.once()에 대한 호출로 전체 노드를 다시 다운로드하지 않으려하지만, 로그에 남은 작업을 추가하고 싶습니다.

답변

1

firebase는 전체 노드를 다운로드하지 않고 카운트를 허용하지 않습니다. 내 제안은 당신이 업데이 트하는 firebase에 어딘가에 카운터를 유지하고 너무 직접 연결할 수 있습니다.

+0

@matthew berg에게 감사드립니다. 나는 (내가 REST API를 사용하고'shallow : true'를 설정하는 것 외에) 노드를 다운로드 할 수 없다는 것을 알고 있지만,'worker queue'를 사용하면 노드가 어쨌든 다운로드되었다고 생각한다. 그래서 큐의 데이터에서 카운트를 얻는 방법이 있는지 궁금해서 더블 카운트를 피하십시오. – Brandon

관련 문제