Correct N+1 utilization checking
This commit is contained in:
parent
7f5485d648
commit
79ea4cbe1a
1 changed files with 24 additions and 12 deletions
|
@ -64,11 +64,13 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Once the page is mounted set a function to run every 5 seconds that will
|
* Once the page is mounted set a function to run every 10 seconds that will
|
||||||
* iterate through the visible servers and fetch their resource usage.
|
* iterate through the visible servers and fetch their resource usage.
|
||||||
*/
|
*/
|
||||||
mounted: function () {
|
mounted: function () {
|
||||||
|
window.setTimeout(() => {
|
||||||
this._iterateServerResourceUse();
|
this._iterateServerResourceUse();
|
||||||
|
}, 5000);
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -133,9 +135,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
window.events.$emit(`server:${server.uuid}::resources`, response.data.attributes);
|
window.events.$emit(`server:${server.uuid}::resources`, response.data.attributes);
|
||||||
})
|
|
||||||
.catch(err => {
|
|
||||||
console.error(err);
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -144,12 +143,23 @@
|
||||||
*
|
*
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
_iterateServerResourceUse: function (initialTimeout = 5000) {
|
_iterateServerResourceUse: function (loop = true) {
|
||||||
|
// Try again in 10 seconds, window is not in the foreground.
|
||||||
|
if (!this.documentVisible && loop) {
|
||||||
window.setTimeout(() => {
|
window.setTimeout(() => {
|
||||||
if (this.documentVisible) {
|
this._iterateServerResourceUse();
|
||||||
return window.setTimeout(this._iterateServerResourceUse(), 5000);
|
}, 10000);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.servers.forEach(server => {
|
||||||
|
this.getResourceUse(server);
|
||||||
|
});
|
||||||
|
|
||||||
|
if (loop) {
|
||||||
|
window.setTimeout(() => {
|
||||||
|
this._iterateServerResourceUse();
|
||||||
|
}, 10000);
|
||||||
}
|
}
|
||||||
}, initialTimeout);
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -167,7 +177,9 @@
|
||||||
// If it has been more than 30 seconds since this window was put into the background
|
// If it has been more than 30 seconds since this window was put into the background
|
||||||
// lets go ahead and refresh all of the listed servers so that they have fresh stats.
|
// lets go ahead and refresh all of the listed servers so that they have fresh stats.
|
||||||
const diff = differenceInSeconds(new Date(), this.backgroundedAt);
|
const diff = differenceInSeconds(new Date(), this.backgroundedAt);
|
||||||
this._iterateServerResourceUse(diff > 30 ? 1 : 5000);
|
if (diff > 30) {
|
||||||
|
this._iterateServerResourceUse(false);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue