mirror of
https://github.com/ajayyy/SponsorBlockServer.git
synced 2024-11-12 18:04:29 +01:00
Only check request time for readiness if cache has filled up
This commit is contained in:
parent
063607fe30
commit
47ea6ae8d3
3 changed files with 9 additions and 4 deletions
|
@ -194,7 +194,8 @@ addDefaults(config, {
|
||||||
deArrowPaywall: false,
|
deArrowPaywall: false,
|
||||||
useCacheForSegmentGroups: false,
|
useCacheForSegmentGroups: false,
|
||||||
maxConnections: 100,
|
maxConnections: 100,
|
||||||
maxResponseTime: 1000
|
maxResponseTime: 1000,
|
||||||
|
maxResponseTimeWhileLoadingCache: 2000
|
||||||
});
|
});
|
||||||
loadFromEnv(config);
|
loadFromEnv(config);
|
||||||
migrate(config);
|
migrate(config);
|
||||||
|
|
|
@ -14,9 +14,11 @@ export async function getReady(req: Request, res: Response, server: Server): Pro
|
||||||
if (!connections
|
if (!connections
|
||||||
|| (connections < config.maxConnections
|
|| (connections < config.maxConnections
|
||||||
&& (!config.redis || redisStats.activeRequests < config.redis.maxConnections * 0.8)
|
&& (!config.redis || redisStats.activeRequests < config.redis.maxConnections * 0.8)
|
||||||
&& (!config.redis || redisStats.avgReadTime < config.maxResponseTime || redisStats.activeRequests < 1)
|
&& (!config.redis || redisStats.activeRequests < 1 || redisStats.avgReadTime < config.maxResponseTime
|
||||||
&& (!config.postgres || postgresStats.activeRequests < config.postgres.maxActiveRequests * 0.8))
|
|| (redisStats.memoryCacheSize < config.redis.clientCacheSize * 0.8 && redisStats.avgReadTime < config.maxResponseTimeWhileLoadingCache))
|
||||||
&& (!config.postgres || postgresStats.avgReadTime < config.maxResponseTime)) {
|
&& (!config.postgres || postgresStats.activeRequests < config.postgres.maxActiveRequests * 0.8)
|
||||||
|
&& (!config.postgres || postgresStats.avgReadTime < config.maxResponseTime
|
||||||
|
|| (redisStats.memoryCacheSize < config.redis.clientCacheSize * 0.8 && postgresStats.avgReadTime < config.maxResponseTimeWhileLoadingCache)))) {
|
||||||
return res.sendStatus(200);
|
return res.sendStatus(200);
|
||||||
} else {
|
} else {
|
||||||
return res.sendStatus(500);
|
return res.sendStatus(500);
|
||||||
|
|
|
@ -107,6 +107,8 @@ export interface SBSConfig {
|
||||||
deArrowPaywall: boolean,
|
deArrowPaywall: boolean,
|
||||||
useCacheForSegmentGroups: boolean
|
useCacheForSegmentGroups: boolean
|
||||||
maxConnections: number;
|
maxConnections: number;
|
||||||
|
maxResponseTime: number;
|
||||||
|
maxResponseTimeWhileLoadingCache: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface WebhookConfig {
|
export interface WebhookConfig {
|
||||||
|
|
Loading…
Reference in a new issue