Hi all,
I have released a new Stratum proxy implemented in Java (Windows/Linux/Mac... just install a JVM).
Here after are the main functionnalities:
-Several pool switching strategies (PriorityFailover, WeightedRoundRobin and more to come)
-Up to 256 workers at the same time (stratum and getwork)
-REST API (pool monitoring, change pool priority, workers stats and much more)
-Friendly Web-Based client with hashrate graphs.
-Support Extranonce notification to avoid disconnection when switching pool.
This proxy may be used to centralize the pool management in a single place. No need to configure pools on each workers, just configure the pools on the proxy and connect your workers to the proxy.
It may be useful if you rent some hashing power on sites like betarigs, leaserig or nicehash to monitor what is really happening. Just connect the leased rigs to the proxy and the proxy to the pools(s) (take care of your bandwith to avoid rejects).
And many things I haven't thought about...
Pool A <---+ +-------------+ Rig1
(Active) | |
| +-------------+ Rig2
| |
Pool B <---+ StratumProxy <------+-------------+ Rig3
(FailOver) | |
| +-------------+ Rig4
| |
Pool C <---+ +-------------+ NiceHash
(FailOver) |
+-------------+ betarigs
|
+-------------+ leaserig
Source code : https://github.com/Stratehm/stratum-proxy
Binaries: https://github.com/Stratehm/stratum-proxy/releases
It has been tested with SHA256, Scrypt, X11 and X13 pools (but should work with all algorithm supporting stratum).
/!\ This proxy does not work with cryptoNight pools. The pool mining protocol of cryptoNight pools is stratum-like but not stratum.
Thank you for testing and your feedback...
WARN: CGMiner 3.7.2 is not compatible with Stratum proxies (this one and others) due to a bug on the extranonce2 size management. You can use sgminer instead or some forks of cgminer which include the fix. If using cgminer 3.7.2, you will have 100% rejects (generally with message Share above target).
This bug has been fixed in later version of cgminer, but it no more supports scrypt mining.
EDIT: You can use the Getwork protocol instead of stratum with CGminer 3.7.2.
Client example: