@alex117815 said in Steam палит BAS с reCaptcha2:
@sergerdn можешь свой проект скинуть?
Может сразу денег дать? Что скромничать то?
@Vincent_ said in BAS nodejs многопоток:
@UserTrue node_log.txt ошибок не содержит
Проблемы начинаются только когда я ставлю много потоков
Не знаю, нужно разбираться. Лично у меня нет на это времени. Nodejs в бас не работает больше чем 255 потоков без особых трюков )
@UserTrue said in BAS nodejs многопоток:
@Vincent_ said in BAS nodejs многопоток:
@UserTrue node_log.txt ошибок не содержит
Проблемы начинаются только когда я ставлю много потоковНе знаю, нужно разбираться. Лично у меня нет на это времени. Nodejs в бас не работает больше чем 255 потоков без особых трюков )
Я не прошу разбираться конкретно в моем коде)
У вас коде node есть множественные обращения к файловой системе?
@Vincent_ said in BAS nodejs многопоток:
Я не прошу разбираться конкретно в моем коде)
У вас коде node есть множественные обращения к файловой системе?
Всякого хватает, можете просто попробовать увеличть таймаут. А кстати зачем вы используете синхронные методы?
@UserTrue said in BAS nodejs многопоток:
@Vincent_ said in BAS nodejs многопоток:
Я не прошу разбираться конкретно в моем коде)
У вас коде node есть множественные обращения к файловой системе?Всякого хватает, можете просто попробовать увеличть таймаут.
А кстати зачем вы используете синхронные методы?
Уже увеличил, то же самое.
Читаю файл и если он есть, то немного обновляю его, нет - создаю и пишу туда данные
...
// имя файла, в который сохраняю результат
var crypto = require('crypto');
var hash = crypto.createHash('md5').update([[URL_CURRENT]]).digest('hex');
var filename = [[SAVE_FOLDER]] + hash + '.txt';
const fs = require('fs');
// проверить был ли url загружен ранее
if (fs.existsSync(filename)) {
console.log("Был загружен ранее " + [[URL_CURRENT]]);
if (keyword.length > 0) {
// сохранить keyword
var content = fs.readFileSync(filename, 'utf8').replace(/^\uFEFF/, '');
var kwRgxp = new RegExp("<!--keywords \[ (.*?) \]-->","i");
if (kwRgxp.test(content)) {
// контент уже содержит keywords, новые надо дописать
var m = content.match(kwRgxp);
var keywords = m[1] + "," + [[KEYWORD]];
keywords = m[1].split(',');
keywords = [...new Set(keywords)];
keywords = keywords.join(',');
content = content.replace(kwRgxp, "<!--keywords [ " + keywords + " ]-->");
} else {
// контент не содержит ключи, дописываю конструкцю в конец
content = content + "<!--keywords [ " + [[KEYWORD]] + " ]-->";
}
// записать результат в файл
fs.writeFileSync(filename, content);
}
[[URL_CURRENT]] = '';
}
@Vincent_ said in BAS nodejs многопоток:
@UserTrue Спасибо, я в курсе, что это вссе можно без node. Но мне так и проще и нагляднее
Что проще это заметно xD
@rkk9 said in BAS nodejs многопоток:
@UserTrue подскажешь что за "особые трюки" ?
Я уже писал где-то, весь код должен инициализироваться один раз, все нужны методы должны быть доступны из global и из него вызываться. Чтобы это реализоватся особенно с асинхронным кодом нужны некоторые знания в js и nodejs