- Баллы
- 123
- Имя в Minecraft
- konfyciu
Сколько по % тянет каждый из шедулеров от общей нагрузки на сервер? Хотя бы примерную цифру.
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Как можно судить о нагрузке, если на неё полностью влияет код, который исполняет шедулер.Сколько по % тянет каждый из шедулеров от общей нагрузки на сервер? Хотя бы примерную цифру.
Насчет нагрузки не знаю, но стоит наверное задуматься над алгоритмом и сделать то, что вам нужно с помощью одного шедулера. Если расскажите идею, то помогу с алгоритмом.Допустим, есть шедулер, который через час исполнит маленький код(удаление из мапы игрока). А если таких шедулеров больше 100?
В течении n-времени запретить атаковать игрока. Пока думал надо таким:Насчет нагрузки не знаю, но стоит наверное задуматься над алгоритмом и сделать то, что вам нужно с помощью одного шедулера. Если расскажите идею, то помогу с алгоритмом.
HashMap<Player, Boolean> isAtack = new HaspMap<Player, Boolean>();
public void shed(final Player player) {
isAtack(player, false);
getServer().getScheduler().шедулер(this, new Runnable() {
public void run() {
isAtack.put(player, true);
}
},60*60*20);
}
Да именно так.Создаёте секундный таймер и сверяете время добавления в мапу(нужно создать ещё одну), и если время прошло - удалить
Когда в чятгурде я делал отложенный таск для каждого сообщения, спустя время, это, мягко говоря, нагружало сервер. Но тут немного иная ситуация, но я так, к словуА зачем каждую секунду проверять, если можно отдельно игроку задать таймер на определенное время?