내 문제는 여기에 있습니다.Meteor에서 중복되는 구독으로 인해 성능이 저하됩니까?
사용자가 메모장에 메모를 저장할 수있는 앱이 있습니다.
현재 사용자가 메모장을 클릭하면 노트 패드를 처음으로 5 노트 돌려주는 발행물을 구독합니다.
그래서 사용자가 새로운 메모장으로 이동할 때마다 새로운 구독이 설정되고 해당 메모장의 5 개의 노트가 minimongo로 끝납니다. 그래서 minimongo는 한 번에 노트 컬렉션에 5 개의 노트 만 가지고 있습니다.
사용자 경험을 향상시키기 위해 전체 앱의 초기로드시 발행물을 변경하여 모든 메모장과 처음 5 개의 노트를 반환하는 게시물을 구독합니다. 각 메모장마다. 그래서 지금 우리는 (5 x (notepads) #) 개의 노트를 항상 가지고 있습니다.
그래서 초기로드가 약간 무거워졌지만 그 이후에는 메모장 간 탐색이 훨씬 빨라 졌으면합니다.
로드시 나는 사용자 메모장을 반환하고 각 메모장마다 5 개의 노트를 반환하는 myInfo
에 가입합니다.
메모장을 실제로 클릭하면 myNotepadInfo
에 가입하고 메모장의 첫 번째 5 노트를 반환합니다. 처음 구독이 이미이 정보를 검색 했으므로, minimongo에있는 문서는 실제로 변경되지 않습니다. 하지만 템플릿에 구독에 따라 메모 메커니즘을 추가로로드하기 때문에 여전히 myNotepadInfo
에 가입하고 싶습니다.
그래서 내 앱이 이러한 변경 사항을 완벽하게 지원하지만 실제로이 기능이 성능 향상에 도움이되는지 확실하지 않습니다. 변경 후 노트 패드가 어떻게로드되는지 구체적인 차이점을 알 수 없습니다.
기본적으로 나는 두 번째 구독이 겹쳐서 초기 구독을합니다.
내게는 두 번째 구독이 초기 구독과 겹치기 때문에 클라이언트에게 문서를 더 적게 전송해야하므로 더 빨라야합니까?
[meteor documentation] (https://docs.meteor.com/api/pubsub.html#Meteor-subscribe) : '* 그러나 실행 기능의 다음 반복이 동일한 레코드 세트에 가입하면 (동일한 이름과 매개 변수), Meteor는 낭비적인 탈퇴/재가입을 건너 뛰기에 충분히 똑똑합니다. * ' 시작시 모든 것을 구독하는 것이 좋다고 생각하지 않습니다. 메모장을 많이 사용하면로드 시간이 크게 늘어납니다. 그것이 구독이 필요한 이유입니다. 앞으로 좀 더 동적로드/검색을 구현하려면 [쉬운 : 검색] (https://github.com/matteodem/meteor-easy-search)이 좋은 선택입니다. –