0
graphQL을 사용하여 응답 속도가 느린 경우가 있습니까? 실제로 내 컬렉션에서 거대한 데이터를graphQL 응답이 느리고 응답이 중복 됨
getActiveCaseWithActiveProcess(){
console.log ("getActiveCaseWithActiveProcess");
var result = [];
var activeElements = ActiveElements.find({
type:"signal",
$or:[
{signalRef:"start-process"},
{signalRef:"start-task"},
{signalRef:"close-case"}
]
},{limit:200}).fetch();
for (var AE of activeElements){
var checkAECount = ActiveElements.find({caseId:AE['caseId']}).count();
if (checkAECount <= 3){
console.log ('caseId: ' + AE['caseId']);
var checkExistInResult = result.filter(function (obj) {
return obj.caseId === AE['caseId'];
})[0];
if (checkExistInResult == null){
result.push({
caseId: AE['caseId'],
caseStart: AE['createdDate']
});
}
}
}
console.log("loaded successfully");
return result;
}
:
이것은 해결에 내 코드입니다. 약 20000 개의 레코드. 그러나 이것을로드 할 때 응답이 너무 느리고 반복적으로 다시로드하면 응답이 더 길어집니다. (: 07 : 20160812-04 28.214)이 시간에, 내 위의 첨부 파일에서 발견으로
I20160812-04:07:25.968(0)? caseId: CASE-0000000284,
I20160812-04:07:26.890(0)? caseId: CASE-0000000285
I20160812-04:07:28.200(0)? caseId: CASE-0000000285
I20160812-04:07:28.214(0)? getActiveCaseWithActiveProcess
I20160812-04:07:28.219(0)? caseId: CASE-0000000194
I20160812-04:07:29.261(0)? caseId: CASE-0000000197
서버에서로드 반복 다시 시작하고 응답 시간이 더 걸릴 것입니다 그 이유는.
항상 그런 것은 아닙니다. 서버가 느리게로드 될 때 발생합니다. 서버가 빨리로드됩니다. 모든 것이 순조롭게 진행됩니다.
궁금한 점이 있습니다. 즉석에서 모든 레코드를로드하는 대신,이 경우'connection' 유형을 사용하고'connection'의 커서를 사용하여 DB 쿼리를 작성하는 것이 어떻습니까? –