ErdbeerbaerLP / DiscordIntegration-Forge

Forge version of the Discord Integration mod
https://modrinth.com/plugin/dcintegration
MIT License
99 stars 56 forks source link

mod causes serious lag issues #283

Open TheRanker opened 3 years ago

TheRanker commented 3 years ago

cshadow.com.neovisionaries.ws.client.WebSocketInputStream.readBytes()100.00%26388ms(dcintegration)

this is constant. with tihs mod. using forge 1.16.5 . with java 8 and java 11. both give same results. websocket fails all the time.. always missing heartbeats.. causing tremendous lag amounts.

been goin on for a few versions, but coudlnt track it down . caught it in a spark report finally.

https://spark.lucko.me/nRVjJnRwF5

i have no idea what this entails and it may not be the mod but some other outside factor.

usin the latest version of dcintergration for my forge. believe its 2.2 now. also happened on the version before this. and on mutiple modpacks.

any feedback be great. thanks :)

TheRanker commented 3 years ago

https://spark.lucko.me/CBBESzSaj2

Brand new server. Put mod on.. server lags out and no one can do anything. Without mod, server stable. Been 2 weeks and no response.

Reinitialized commented 3 years ago

Can confirm this is still an issue via Spark, which reports is causing over 30 SECONDS of delay. Although an extremely useful mod, disabling it significantly improved performance on my ATM6 server. https://spark.lucko.me/u0X5aosyyx

The problematic function seems to be dcshadow.com.neovisionaries.ws.client.WebSocketInputStream.readBytes()100.00%34720ms(dcintegration) more specifically java.net.SocketInputStream.socketRead0()100.00%34720ms (self: 34720ms - 100.00%)

EDIT: upon further discussion with some friends, the issue definitely seems to be native Java. He pointed out this StackOverflow which should contain some helpful pointers on how to resolve it, most notably not using native APIs.

Kytech commented 2 years ago

@TheRanker @Reinitialized If you have command block systems running regularly, see if the mod is configured to send command output to discord. If it is (even if no commands show on discord), try disabling the option to send command info do Discord. it seems like the rate limiter will start gobbling up RAM if rate limiting starts kicking in faster than the queue can clear out. I have been experiencing massive lag in connection to excessive RAM usage that I linked back to the rate limiter (see #326 )