Stratehm / stratum-proxy

Java implementation of a stratum->stratum/HTTPGetwork proxy with a Web GUI and some pool switching strategies (PriorityFailover, WeightedRoundRobin). Simple to install and configure.
GNU General Public License v3.0
198 stars 118 forks source link

cpu / network increase with client disconnects #18

Closed meoso closed 8 years ago

meoso commented 10 years ago

as far as i can tell, it seems cpu/network usage increase with client disconnects. i can share some screenshots/debug logs, but do not want it public. any way to do so?

Stratehm commented 10 years ago

Hi,

Send me the files link by replying this email.

Thanks

Date: Wed, 27 Aug 2014 06:52:52 -0700 From: notifications@github.com To: stratum-proxy@noreply.github.com Subject: [stratum-proxy] cpu / network increase with client disconnects (#18)

as far as i can tell, it seems cpu/network usage increase with client disconnects.

i can share some screenshots/debug logs, but do not want it public. any way to do so?

— Reply to this email directly or view it on GitHub.

Stratehm commented 10 years ago

Hi,

Upload the files on file sharing service (like mega) and send me the link by email. (I have replyed to your email so you will have my address).

Is this usage increase really an issue (the proxy stops to work) or just annoying (and it is a perf improvement request) ?

I will be busy for the next weeks, so I may not have enough time to make big improvements.

meoso commented 10 years ago

[link removed]

After looking at debug, it seems it has to do more with pool switching and pool unavailability. either way network and cpu increase. if i restart the proxy; then all is well, so i may cronjob an hourly restart.

Stratehm commented 10 years ago

What the version of the JVM do you use ? (java -version)

It seems that the proxy fails to reconnect your 2 configured pools. From 05:22:11,653, both pools are down (network disconnection) and both pools reconnection fails with the following error: java.net.UnknownHostException

This error can be raised due to some DNS resolving problem but also due to a bug in some JVM versions. The network increase may be due to reconnection failure of the pools and the rejections of worker connection (since there is no pool available).

About the CPU increase, I really do not understand. On the first screenshot (Group1_2014-08-21_Selection_001), the CPU load of the proxy is 800%, that mean it fully uses your 8 cores. Right ? But why are there so many running proxy instances ? (I see 8 different PIDs)

meoso commented 10 years ago

I'm always on latest Java7 -- right now being Oracle's 1.7.0_67 64bit

I have 4 HyperThreaded Cores. I assumed that's just threads from the main app -- i did not have 8 instances. i only ran 2 instances, and only one seems to have issue at a time; being the one that i connect 30+ miners to from 7pm to 6am. i may reduce to one instance and set debug so that i can a better hold of the situation. yes it also seems to do with pool connection issue.

don't spend too much time with your busy schedule, i'm not that important. i have other proxies i can play with too.

i'm looking at a "100%" htop now... it may be reconnect threads (9), as there are other's at low cpu. also, my actual pool hashrate is not suffering.

this net/cpu increase happens every night, not just intermittently. so it seems to coincide with the qty of miners that connect from 7pm to 6am.

meoso commented 10 years ago

New data/logs from today: https://mega.co.nz/#!b083FTSI!kWzSj8XoUgG-9UXm5t87hctn1I37Qd2afOJ8JvZKonI

Don't make this a priority -- i'll remove link upon notifictation of download. Thank you.