diff --git a/Dockerfile b/Dockerfile index 49eba93..6d81894 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,4 +6,4 @@ mvn -f pom.xml clean package FROM eclipse-temurin:18 COPY --from=builder /tmp/Facti13.Web.Backend.Java.V2/target/*.jar /app/backend.jar WORKDIR /app -ENTRYPOINT ["java", "-jar", "backend.jar"] \ No newline at end of file +ENTRYPOINT ["java", "-XX:+UseG1GC", "-jar", "backend.jar"] \ No newline at end of file diff --git a/src/main/java/app/updates/BanCountUpdater.java b/src/main/java/app/updates/BanCountUpdater.java index a9952a6..e3fc3a6 100644 --- a/src/main/java/app/updates/BanCountUpdater.java +++ b/src/main/java/app/updates/BanCountUpdater.java @@ -4,6 +4,7 @@ import app.entities.Stats; import jakarta.annotation.PostConstruct; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; +import org.jobrunr.jobs.annotations.Job; import org.jobrunr.scheduling.JobScheduler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -35,6 +36,7 @@ public class BanCountUpdater { } } + @Job(name = "Get ban count", retries = 0) public void UpdateBanCount(){ stats.setBan_count((Long) entityManager.createNativeQuery("SELECT COUNT(*) as count FROM `light_bans` WHERE active = 1").getSingleResult()); stats.getUpdates().merge("ban_count", Instant.now().getEpochSecond(), (x, y) -> y); diff --git a/src/main/java/app/updates/CountriesUpdater.java b/src/main/java/app/updates/CountriesUpdater.java index 5709e05..6181f08 100644 --- a/src/main/java/app/updates/CountriesUpdater.java +++ b/src/main/java/app/updates/CountriesUpdater.java @@ -47,7 +47,7 @@ public class CountriesUpdater { } } - @Job(name = "Update countries statistic") + @Job(name = "Update countries statistic", retries = 0) public void UpdateCountriesStatistic() { stats.getCountries().clear(); diff --git a/src/main/java/app/updates/PlayersUpdater.java b/src/main/java/app/updates/PlayersUpdater.java index 22ea189..9f04032 100644 --- a/src/main/java/app/updates/PlayersUpdater.java +++ b/src/main/java/app/updates/PlayersUpdater.java @@ -39,7 +39,7 @@ public class PlayersUpdater { } } - @Job(name = "Update A2S data on: %0") + @Job(name = "Update A2S data on: %0", retries = 0) public void UpdatePlayersOnServer(String server_name) { stats.RefreshServerA2SData(context, server_name); stats.getUpdates().merge("servers", Instant.now().getEpochSecond(), (x, y) -> y); diff --git a/src/main/java/app/updates/SocialUpdater.java b/src/main/java/app/updates/SocialUpdater.java index 28f1ec1..8ab7f15 100644 --- a/src/main/java/app/updates/SocialUpdater.java +++ b/src/main/java/app/updates/SocialUpdater.java @@ -4,6 +4,7 @@ import app.entities.Stats; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import jakarta.annotation.PostConstruct; +import org.jobrunr.jobs.annotations.Job; import org.jobrunr.scheduling.JobScheduler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -47,11 +48,13 @@ public class SocialUpdater { } } + @Job(name = "Get Discord users count", retries = 0) public void UpdateDiscordCount() throws IOException { stats.setDiscord_users(objectMapper.readTree(new URL(discord_url)).get("approximate_member_count").asInt()); stats.getUpdates().merge("discord_count", Instant.now().getEpochSecond(), (x, y) -> y); } + @Job(name = "Get VK users count", retries = 0) public void UpdateVKCount() { int count = 0; String response = restTemplate.getForEntity(vk_url, String.class).getBody(); diff --git a/src/main/java/app/updates/UniqueUpdater.java b/src/main/java/app/updates/UniqueUpdater.java index d46feae..fa62954 100644 --- a/src/main/java/app/updates/UniqueUpdater.java +++ b/src/main/java/app/updates/UniqueUpdater.java @@ -77,7 +77,7 @@ public class UniqueUpdater { } /////////////////////////////////////////////////////////////////////////////////////////// - @Job(name = "Get server unique statistic %0") + @Job(name = "Get server unique statistic %0", retries = 0) public void getServerUnique(String server_name, String db) { stats.getServers().get(server_name).UpdateUniq("total", getServerUniqueFromQuery(query_total, db)); stats.getServers().get(server_name).UpdateUniq("day", getServerUniqueFromQuery(query_day, db)); @@ -85,22 +85,22 @@ public class UniqueUpdater { stats.getServers().get(server_name).UpdateUniq("year", getServerUniqueFromQuery(query_year, db)); } - @Job(name = "Get total count unique players on all server") + @Job(name = "Get total count unique players on all server", retries = 0) public void UpdateServerUniqueTotal() { stats.UpdateUniq("total", getServerUniqueFromQuery(query_total)); } - @Job(name = "Get year count unique players on all server") + @Job(name = "Get year count unique players on all server", retries = 0) public void UpdateServerUniqueYear() { stats.UpdateUniq("year", getServerUniqueFromQuery(query_year)); } - @Job(name = "Get month count unique players on all server") + @Job(name = "Get month count unique players on all server", retries = 0) public void UpdateServerUniqueMonth() { stats.UpdateUniq("month", getServerUniqueFromQuery(query_month)); } - @Job(name = "Get day count unique players on all server") + @Job(name = "Get day count unique players on all server", retries = 0) public void UpdateServerUniqueDay() { stats.UpdateUniq("day", getServerUniqueFromQuery(query_day)); } diff --git a/src/main/java/app/updates/VipCountUpdater.java b/src/main/java/app/updates/VipCountUpdater.java index c767239..6539d00 100644 --- a/src/main/java/app/updates/VipCountUpdater.java +++ b/src/main/java/app/updates/VipCountUpdater.java @@ -4,6 +4,7 @@ import app.entities.Stats; import jakarta.annotation.PostConstruct; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; +import org.jobrunr.jobs.annotations.Job; import org.jobrunr.scheduling.JobScheduler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -38,6 +39,7 @@ public class VipCountUpdater { } } + @Job(name = "Get VIP count", retries = 0) public void UpdateVIPCount() { stats.setVip_players( (Long) entityManager.createNativeQuery("SELECT COUNT(*) as count FROM `sm_admins` WHERE `status` LIKE 'VIP' AND (`comment` LIKE 'Donate.User' OR `comment` LIKE 'f13bot.User')") @@ -45,6 +47,7 @@ public class VipCountUpdater { stats.getUpdates().merge("vip_count", Instant.now().getEpochSecond(), (x, y) -> y); } + @Job(name = "Get FreeVIP count", retries = 0) public void UpdateFreeVIPCount() { stats.setFreevip_players( (Long) entityManager.createNativeQuery("SELECT COUNT(*) as count FROM `sm_admins` WHERE `status` LIKE 'VIP' AND `comment` LIKE 'f13bot.FreeVIP'")