Доброго времени суток,
С другом думаем как "раскачегарить" nodejs. Есть данные (несколько миллионов). Если 2 задачи: взять одну запись по id и взять n-записей согласно какому-то условию.
Для теста храним данные в памяти. Расположили как объект, где ключ = id записи. Таким образом легко дергать по id. Но вот искать записи по условию - это ужас :) в общем обрабатывает примерно 21 запрос в секунду. Это капец, судя по показателям производительности 99%, что нужно писать по другому, но вот как лучше?
Немного по коду. Все показать не могу, к сожалению:
app.jsconst cluster = require('cluster');
const numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
for (let i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('exit', (worker, code, signal) => process.exit(1));
} else require('./create-server');
create-server.jsconst http = require('http');
const parser = require('url');
// ...
module.exports = http.createServer((req, res) => {
res.setHeader('Content-Type', 'application/json');
let url = parser.parse(req.url, true);
// routes ...
}).listen(10000, () => { ... });
models/Test.js
Здесь будут храниться миллионы записей
const Test = {};
module.exports = Test;
На NodeJS пишу недавно, вообще на python пишу
Нашел рейтинг -
ссылка