Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Синхронная запись в БД (https://javascript.ru/forum/node-js-io-js/73612-sinkhronnaya-zapis-v-bd.html)

stweet 28.04.2018 16:23

Не вполне убедительно и все же, огромное спасибо за участие.

stweet 28.04.2018 16:24

Спасибо, будем надеяться так и есть.

EmperioAf 28.04.2018 16:29

И да, если вы вдруг захотите вызвать таки все обращения к бд одновременно(то что у вас изначально делалось) то код надо привести примерно к такому виду:
const res = await Promise.all(Array(1000).fill(Model.incCounterByType(«one»)).map(promise => promise.then(res => res.counter).catch(err => { console.error(err); return -1;}))); // res: number[] - массив чисел

stweet 28.04.2018 16:55

Цитата:

Сообщение от EmperioAf (Сообщение 484356)
И да, если вы вдруг захотите вызвать таки все обращения к бд одновременно(то что у вас изначально делалось) то код надо привести примерно к такому виду:
const res = await Promise.all(Array(1000).fill(Model.incCounterByType(«one»)).map(promise => promise.then(res => res.counter).catch(err => { console.error(err); return -1;}))); // res: number[] - массив чисел

Нет нет, выше я описал идею. Есть несколько игр с общим балансом и целью задался железно изменять баланс любой игрой для всех. Т.е. 100500 игр должны быть уверенны, что у них из бд самый актуальный баланс. Меня смутило, что в консоли каждая игра получает произвольный баланс хотя в БД все в порядке.


Часовой пояс GMT +3, время: 09:14.