MySQL проблема!

Форум / PHP общие вопросы / Базы данных / Печать / RSS-лента
0
1. MaZaHaKeR (25.01.16 / 11:30)
Дух
Не могу как сообразить следуещее...

Есть таблица в которой есть колонка 'баланс' и колонка 'заработок в секунду' ну и прочие типа логин пароль и т.д..
Так вот нужно чтобы у всех пользователей каждую секунду обновлялся баланс в базе. Тоесть если сейчас заработок в секунду=100 то к значению баланс прибавляем 100
0
2. LETGAM (25.01.16 / 12:36)
Чатланин
1. MaZaHaKeR, используй значок "+" .
0
3. Кевин Митник_HHTeam (25.01.16 / 13:31)
Айсберг Визави
не эффективно гонять в базу каждую секунду на пользователя. лучше ищи другой способ
0
4. DimmoS (25.01.16 / 16:27)
Чатланин
1. MaZaHaKeR, хоть примерно принцип опиши, что где и для чего
Тогда и советы дельные будут
Отредактировано: DimmoS (25.01.16 / 16:28)
0
5. MaZaHaKeR (28.01.16 / 13:05)
Дух
DimmoS (25 Января 2016 / 16:27)
1. MaZaHaKeR, хоть примерно принцип опиши, что где и для чего
Тогда и советы дельные будут

нужно каждую секунду записывать в базу записи для каждого пользователя а именно баланс их который увеличивается каждую секунду в зависимости от заработка в секунду
0
6. karpov-ml (28.01.16 / 13:26)
Пацак
Насколько я помню, крон можно ставить минимум на 1 минуту :E
0
7. MaZaHaKeR (28.01.16 / 14:07)
Дух
тады обясните мне как работает например вот эта игра http://marsgame.mobi
0
8. Vantuz (28.01.16 / 14:26)
Господин ПЖ
7. MaZaHaKeR, маловероятно что там каждый раз пишется в базу
я бы сделал вывод с помощью jquery и аяксом писал бы в redis или mongo, а раз в 5-10 минут кроном записывал бы в бд, только те поля которые изменились в redis
Сделать не так уж и сложно
0
9. MaZaHaKeR (28.01.16 / 14:35)
Дух
8. Vantuz, спс. Только вроде аякс работает если юзер в сети? а там пишется даж если пользователей нет онлайн. или может я ошибаюсь?
0
10. Vantuz (28.01.16 / 17:50)
Господин ПЖ
Я подумал лучше всего в базе хранить число монет и время обновления, и вообще не дергать базу
высчитывать кол. монет только по времени к примеру в базе 0 монет и datetime 2016-01-27 15:14:14 человек входит на сайт берем 0 и начинает прибавлять яваскриптом
который нужен только для показа, если человек смотрит баланс то 0 + текущий счетчик
человек уходит с сайта и снова входит то берем 0 из базы высчитываем сколько времени прошло к примеру 2 мин и только в этом случае пишем в базу, это 120 монет и снова включаем счетчик
если человека нет на сайте то ничего не считает и пересчет произойдет только когда он вернется
Смайлы / Теги / Правила / Топ тем / Поиск