Как мне кажется из каменного века. Создать отдельное поле, в которое я сохраняю точное время инициации действия. В тот момент когда мне надо показать пользователю поле "account" я показываю account + ( (дата инициации дейтсивя обновления поля accoutn) - (дата отображения поля) )*(нужный параметр добавления)
"Долбить" базу каждую секунду, без особой на то нужды, когда можно этого не делать - плохая идея. Данное решение описывает более рациональный подход, если он конечно возможен.
Писать сторонний микросервис, который будет отправлять каждую секунду запросы в БД и увеличивать значение.
Не знаю, что Вы подразумеваете под "сторонним микросервисом" и как это в конечном итоге должно работать (логически), например при нагрузке, запросы могут вставать в очередь и данные могут терять свою актуальность в этом (вашем) случае... Можете попробовать несколько вариантов:
1. Попробовать использовать "родные"
события MySQL
2. Создать примитивный скрипт PHP, типа такого и запустить его (на бесконечное выполнение):
<?php
while(true) {
mysql_query("..."); //Условно
sleep(1);
}
но, он будет выполняться не 1 раз в секунду, а с паузой в 1 секунду
3. Загадить крон заданиями, в кол-ве около 60 штук (т.к. крон задания запускаются минимум 1 раз в минуту), как это примерно должно выглядеть
описано здесь, что в целом тоже не очень надёжно, т.к. высока вероятность, что рано или поздно, запросы могут отвалиться, приводя тем самым самым данные в неактуальное состояние.