Я пытаюсь оптимизировать проект интерактивной доски группы, в котором используется PAPER. js вместе с базой данных sqlite
Сейчас у нас огромные запросы для сбора информации, и каждый раз, когда кто-то др aws обновляет ее весь этот объект ..
Я изменяю проект, чтобы обновить только то, что действительно нужно, и я изменил нашу базу данных на Mon go ...
, вот пример что сохраняется в БД
[
{
"_id": "5e18f03ef0401a4bf003e356",
"room": 111,
"project": [
[
"Layer",
{
"name": "page-5",
"applyMatrix": true,
"data": {
"aspectRatio": 0.707
},
"children": [
[
"Path",
{
"name": "2:162",
"applyMatrix": true,
"segments": [
[
-156.5247,
-247.75487
],
[
-158.05878,
-247.75487
]
],
"strokeColor": [
0.2902,
0.52549,
0.9098
],
"strokeWidth": 2
}
],
[
"Path",
{
"name": "2:3",
"applyMatrix": false,
"segments": [
[
66
],
[
-6,
-6.88
]
],
"strokeColor": [
0.2902,
0.52549,
0.9098
],
"strokeWidth": 2
}
]
]
}
]
],
ETC....
Это пример моего мон go кода обновления для записи, когда пользователи рисуют
app.post("/api/draw", function(req, res, next) {
const { room, newPath, newHistory } = req.body;
mongo.connect(url, options).then(db => {
dbo = db.db(dbName);
dbo
.collection("user-data")
.updateOne(
{ room: +room },
{ $push: { "project.0.1.children": newPath } },
function(err) {
if (err) res.sendStatus(500);
// res.send('Added Path')
db.close();
}
);
});
Есть предложения по улучшению производительности?