Я создаю диссон-бота, и в настоящее время он настроен так:
Есть index.js, который обрабатывает команды.
Если команда X, она переходит к X.js
Если команда Y, она переходит к Y.js
У меня есть X.js и Y.js, которые читают и пишут в один и тот же файл JSON (в несогласованных областях), используя fs.readFileSync () и fs.writeFile ()
fs.readFileSync () вызывается только один раз в каждом X и Y при запуске командного сценария.
чтение / запись прекрасно работает из одного и того же файла с этим одним вызовом, но я не проверял, как это работает с несколькими сценариями, записывающими в один и тот же файл одним вызовом в начале.
Полагаю, это не сработает?
И, предположив, что это не сработает, какое решение вы, ребята, предложите?
Вызов fs.readFileSync () в X / Y каждый раз, когда вызывается команда X / Y (Насколько это эффективно? Сейчас я не очень часто вызываю команды - возможно, не чаще, чем пару раз в час), но если в конечном итоге это становится общедоступным, может быть довольно много вызовов X / Y в секунду. Это может привести к значительным нагрузкам на файловую систему / бот / и т. д.? Полагаю, нет, просто убедившись!)
Создание внешнего сценария для обработки чтения + записи (X / Y будет вызывать этот сценарий для данных и вывода данных для записи.)
Использование разных файлов для каждого скрипта (ах, я бы на самом деле не хотел этого делать !!)
Может быть, другое решение? Кто знает ...
Если кто-то сделал что-то подобное / знает решение, пожалуйста, не стесняйтесь писать :)
Спасибо!