[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Периодический Sql запрос.
Страницы: 1, 2
Larik
Подскажите пожалуйста,каким наиболее оптимальным способом можно обновить содержимой всей таблицы на 1(каждую секунду)?Может в Mysql есть такая встроенная возможность,или посылать регулярные запросы через php?

_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
exotica
cron скорее всего и простенький скрипт. По mysql погуглил пока тоже не нащел ничего

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Valick
Larik, очень интересно, нафига?

_____________
Стимулятор ~yoomoney - 41001303250491
Larik
Цитата (Valick @ 14.01.2014 - 17:39)
Larik, очень интересно, нафига?

нужно какбы золото давать(для игры)

_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
Larik
Цитата (exotica @ 14.01.2014 - 17:26)
cron скорее всего и простенький скрипт. По mysql погуглил пока тоже не нащел ничего

Спасибо,попробую:)

_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
FatCat
Цитата (Larik @ 14.01.2014 - 17:20)
нужно какбы золото давать(для игры)

А если на сайте всю ночь нет ни одного посетителя, нафига молотить в это время?
Я бы сделал на тасках: при просмотре страницы, где должна отображаться информация, вызывается скрипт, который проверяет, не пора ли обновить информацию, и если пора, то обновляет и перекеширует, а если нет, отдает из кеша.

_____________
Бесплатному сыру в дырки не заглядывают...
bestxp
Цитата (FatCat @ 14.01.2014 - 18:53)
Цитата (Larik @ 14.01.2014 - 17:20)
нужно какбы золото давать(для игры)

А если на сайте всю ночь нет ни одного посетителя, нафига молотить в это время?
Я бы сделал на тасках: при просмотре страницы, где должна отображаться информация, вызывается скрипт, который проверяет, не пора ли обновить информацию, и если пора, то обновляет и перекеширует, а если нет, отдает из кеша.

не всегда логично, если игра, логично что всё что надо считает крон, а не лишняя нагрузка на всякие таски
sergeiss
Цитата (bestxp @ 14.01.2014 - 19:09)
логично что всё что надо считает крон, а не лишняя нагрузка на всякие таски

Ну да, ну да... А обновлять всю таблицу на 1, каждую секунду - это вовсе не нагрузка smile.gif

FatCat правильно говорит - менять данные только тогда, когда это требуется, а не постоянно. Иначе просто тупо уронишь сервер.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
linker
Если мне не изменяет память, то с 5 мускула появились эвенты, но лично я никогда не пробовал.

P.S. и да, думаю это мягко говоря, не оптимально, каждую секунду дёргать запросы, надо что-то менять в алгоритме.

_____________
Gear Framework
Gear Framework на Github
Larik
Пока гуглил по cron'у нашел очень простую штуку- планировщик,добавленный в Mysql,начиная с версии 5,1.Для простых запросов,не требующих Php он как я понял в разы удобнее и оптимизированнее связки Php+cron
В phpmyadmin,при клике по имени бд правее импорта/экспорта он есть, под именем События,там очень легко создавать эвенты:)
Вот конечный код для моей задачи:
CREATE EVENT `gold inc` ON SCHEDULE EVERY1 SECOND STARTS '2014-01-14 19:07:00' ON COMPLETION NOT PRESERVE ENABLE DO UPDATE  `resources` SET  `count` =  `count` +1


Единственное, что лично я заметил,так это то что в колонке Статус планировщика событий вместо слова включить имеется ввиду включен,а вместо слова выключить - выключен(может такое только у меня)

Для уверенности, легче проверить его состояние Sql запросом
SHOW VARIABLES LIKE 'event_scheduler';


_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
Larik
Насчет оптимизации в общем виде сам сказать не могу,но вроде на форумах пишут что планировщик получше крона+php(для посылки переодических запросов).
А на счет моего случая ,только допер что можно тупо записать время начала игры,а за тем разницу в секундах до текущего времени умножить на 1 wink.gif

_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
Valick
Цитата
только допер что можно тупо записать время начала игры,а за тем разницу в секундах до текущего времени умножить на 1

молодец, догадался
только не совсем так, время начала игры не совсем верное определение.
тип поля должен быть timestamp и при просмотре или приходных/расходных операциях это время должно обновляться и соответсвенно корректироваться золотишко, ну и первое обновление времени может совпадать с началом игры, а может и по другому событию стартовать, например захват рудника

_____________
Стимулятор ~yoomoney - 41001303250491
Larik
Valick,спасибо за timestamp:)

_____________
Чем больше круг знаний - тем больше длина окружности соприкосновения с областью неизвестного - тем больше степень моего незнания.
Лёгкость принятия решений и громкость слов (или число нулей ожидаемой прибыли) свойство окружностей сверхмалого диаметра, стремящихся к точке - к точке зрения.
linker
Возможно, раз нужны секунды, немного оптимальнее будет хранить именно unix-timestamp.

_____________
Gear Framework
Gear Framework на Github
inpost
Larik
Тебе надо менять данные тогда, когда к этим данным идёт запрос. Зачем столько лишней нагрузки делать?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.