Когда и как лучше сохранять данные?
1. При дисконекте
2. Как только переменная изменится. Т.е. апнул лвл, сохранил в БД и так далее
Вид для печати
Когда и как лучше сохранять данные?
1. При дисконекте
2. Как только переменная изменится. Т.е. апнул лвл, сохранил в БД и так далее
При изменениях значений переменной + при выходе с сервера.
Но и такое бывает что несколько игроков меняют переменные часто,
если представить что человек так 100 будут теребонькать бедную БДшку то она залагает, а то и ляжет от усталости...
Так что я бы советовал припаять ограничение соединений по времени при обращении игроков к БД, чтоб не дудосили.
BlueG в своем плагине использует thread, вряд ли что то залагает.
А теперь представим, что я доначу на сервер 10000 рублей и в это время сервер заддосили, а сохранения стояло только при дисконнкте = откату сервера. (До предыдущих сохранении) + мой деньги ушли создателю. Истории транзакции у меня нет, доказать не чем, что я пожертвовал серверу 10000 рублей. Ваши действия?
P.S: Я знаю, что донат надо сохранять сразу при изменений, но видь это может произойти и с другими переменными?
У них, как я понимаю, имеется синхронизация MySQL с Личным Кабинетом на сайте (иначе что может значит "ЛК"?). Вот через него он и посмотрел.
Как уже сказали ранее, главное сделать различные временные ограничения, дабы сервер в итоге на заддосили, например, передачей по одному доллару с помощью бинда команды на кнопку (думаю, если человек 10 начнут так флудить, сервера надолго не хватит).
Например то, что кол-во потоков в плагине ограничено и большое число запросов всё равно добьёт сервер?
Вот, например
http://i.imgur.com/MZuTiDY.png
И даже если представить, что формирование ответа у MySQL занимает половину всего времени (меньше половины секунды), при подобном "ддосе" могут начаться лаги как минимум из-за того, что игрок будет флудить командой и сервер будет обращаться к плагину.
Хотя право твоё. Но я всё же не стал бы издеваться над БД