Улучшение парсинга head-запроса
This commit is contained in:
@@ -26,8 +26,8 @@ class BUCServer {
|
||||
this.periodicCheckWait = 500;//пауза, если нечего делать
|
||||
|
||||
this.cleanQueryInterval = 300*dayMs;//интервал очистки устаревших
|
||||
this.oldQueryInterval = 30*dayMs;//интервал устаревания запроса на обновление
|
||||
this.checkingInterval = 3*hourMs;//интервал проверки обновления одного и того же файла
|
||||
this.oldQueryInterval = 14*dayMs;//интервал устаревания запроса на обновление
|
||||
this.checkingInterval = 5*hourMs;//интервал проверки обновления одного и того же файла
|
||||
this.sameHostCheckInterval = 1000;//интервал проверки файла на том же сайте, не менее
|
||||
} else {
|
||||
this.maxCheckQueueLength = 10;//максимальная длина checkQueue
|
||||
@@ -184,8 +184,8 @@ class BUCServer {
|
||||
log(LM_WARN, `clean 'buc' table: deleted ${res.deleted}`);
|
||||
}
|
||||
|
||||
rows = await db.select({table: 'buc', count: true});
|
||||
log(LM_WARN, `'buc' table length: ${rows[0].count}`);
|
||||
//rows = await db.select({table: 'buc', count: true});
|
||||
//log(LM_WARN, `'buc' table length: ${rows[0].count}`);
|
||||
|
||||
now = Date.now();
|
||||
//выборка кандидатов
|
||||
@@ -250,16 +250,20 @@ class BUCServer {
|
||||
|
||||
try {
|
||||
let unchanged = true;
|
||||
let size = 0;
|
||||
let hash = '';
|
||||
|
||||
const headers = await this.down.head(row.id);
|
||||
|
||||
const etag = headers['etag'] || '';
|
||||
const modTime = headers['last-modified'] || '';
|
||||
let size = parseInt(headers['content-length'], 10) || 0;
|
||||
|
||||
//log(row.id);
|
||||
//log(`etag: ${etag}, modTime: ${modTime}, size: ${size}`)
|
||||
|
||||
if ((!etag || !row.etag || (etag !== row.etag))
|
||||
&& (!modTime || !row.modTime || (modTime !== row.modTime))
|
||||
&& (!size || !row.size || (size !== row.size))
|
||||
) {
|
||||
const downdata = await this.down.load(row.id);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user