Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
530e2966fa
49
README.md
49
README.md
@ -9,9 +9,8 @@ Alternatively, this software also has an [MPOS](https://github.com/MPOS/php-mpos
|
|||||||
function as a drop-in-replacement for [python-stratum-mining](https://github.com/Crypto-Expert/stratum-mining). This
|
function as a drop-in-replacement for [python-stratum-mining](https://github.com/Crypto-Expert/stratum-mining). This
|
||||||
mode can be enabled in the configuration and will insert shares into a MySQL database in the format which MPOS expects.
|
mode can be enabled in the configuration and will insert shares into a MySQL database in the format which MPOS expects.
|
||||||
|
|
||||||
This software was built from the ground up with the ability to running with multiple coins that can have different
|
This software was built from the ground up to run with multiple coins simultaneously (which can have different
|
||||||
properties and hashing algorithms. It can be used to create a pool for a single coin or for multiple coins at once.
|
properties and hashing algorithms). It can be used to create a pool for a single coin or for multiple coins at once. The pools use clustering to load balance across multiple CPU cores.
|
||||||
The pools use clustering to load balance across multiple CPU cores.
|
|
||||||
|
|
||||||
For reward/payment processing, shares are inserted into a fast NoSQL key/value database (Redis). Each coin has a
|
For reward/payment processing, shares are inserted into a fast NoSQL key/value database (Redis). Each coin has a
|
||||||
processor that monitors for confirmed submitted blocks then send out payments according to shares accumulated in the
|
processor that monitors for confirmed submitted blocks then send out payments according to shares accumulated in the
|
||||||
@ -97,18 +96,20 @@ Description of options:
|
|||||||
"coin": "litecoin", //This MUST be a reference to the 'name' field in your coin's config file
|
"coin": "litecoin", //This MUST be a reference to the 'name' field in your coin's config file
|
||||||
|
|
||||||
|
|
||||||
/* This determines what to do with submitted shares. You have two options: 1) Enable internal
|
/* This determines what to do with submitted shares (and stratum worker authentication).
|
||||||
and disable mpos which will allow this portal to handle all share payments.2) Enable mpos
|
You have two options:
|
||||||
and disabled internal which wil allow MPOS to handle all share payments. */
|
1) Enable internal and disable mpos = this portal to handle all share payments.
|
||||||
|
2) Enable mpos and disable internal = shares will be inserted into MySQL database
|
||||||
|
for MPOS to process. */
|
||||||
"shareProcessing": {
|
"shareProcessing": {
|
||||||
|
|
||||||
"internal": { //Enabled this options for share payments to be processed and sent locally
|
"internal": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
|
|
||||||
/* When workers connect, to receive payments, their address must be used as the worker
|
/* When workers connect, to receive payments, their address must be used as the worker
|
||||||
name. If this option is true, on worker authentication, their address will be verified
|
name. If this option is true, on worker authentication, their address will be
|
||||||
via a validateaddress API call to the daemon. Miners with invalid addresses will be
|
verified via a validateaddress API call to the daemon. Miners with invalid addresses
|
||||||
rejected. */
|
will be rejected. */
|
||||||
"validateWorkerAddress": true,
|
"validateWorkerAddress": true,
|
||||||
|
|
||||||
/* Every this many seconds check for confirmed blocks and send out payments. */
|
/* Every this many seconds check for confirmed blocks and send out payments. */
|
||||||
@ -170,8 +171,8 @@ Description of options:
|
|||||||
detects those and disconnects them. */
|
detects those and disconnects them. */
|
||||||
"connectionTimeout": 600, //Remove workers that haven't been in contact for this many seconds
|
"connectionTimeout": 600, //Remove workers that haven't been in contact for this many seconds
|
||||||
|
|
||||||
/* If a worker is submitting a good deal of invalid shares we can temporarily ban them to
|
/* If a worker is submitting a high threshold of invalid shares we can temporarily ban them
|
||||||
reduce system/network load. Also useful to fight against flooding attacks. */
|
to reduce system/network load. Also useful to fight against flooding attacks. */
|
||||||
"banning": {
|
"banning": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"time": 600, //How many seconds to ban worker for
|
"time": 600, //How many seconds to ban worker for
|
||||||
@ -249,16 +250,19 @@ If you are creating multiple pools, ensure that they have unique stratum ports.
|
|||||||
|
|
||||||
For more information on these configuration options see the [pool module documentation](https://github.com/zone117x/node-stratum#module-usage)
|
For more information on these configuration options see the [pool module documentation](https://github.com/zone117x/node-stratum#module-usage)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
##### [Optional, recommended] Setting up blocknotify
|
##### [Optional, recommended] Setting up blocknotify
|
||||||
* In `config.json` set the port and password for `blockNotifyListener`
|
1. In `config.json` set the port and password for `blockNotifyListener`
|
||||||
* In your daemon conf file set the `blocknotify` command to use:
|
2. In your daemon conf file set the `blocknotify` command to use:
|
||||||
|
```
|
||||||
|
[path to scripts/blockNotify.js] [listener host]:[listener port] [listener password] [coin name in config] %s
|
||||||
|
```
|
||||||
|
Example: inside `dogecoin.conf` add the line
|
||||||
|
```
|
||||||
|
blocknotify="scripts/blockNotify.js localhost:8117 mySuperSecurePassword dogecoin %s"
|
||||||
|
```
|
||||||
|
|
||||||
```
|
|
||||||
[path to scripts/blockNotify.js] [listener host]:[listener port] [listener password] [coin name in config]
|
|
||||||
%s"
|
|
||||||
```
|
|
||||||
|
|
||||||
* Example: `dogecoin.conf` > `blocknotify="scripts/blockNotify.js localhost:8117 mySuperSecurePassword dogecoin %s"`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -268,6 +272,9 @@ For more information on these configuration options see the [pool module documen
|
|||||||
node init.js
|
node init.js
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Optionally, use something like [forever](https://github.com/nodejitsu/forever) to keep the node script running
|
||||||
|
in case the master process crashes.
|
||||||
|
|
||||||
|
|
||||||
Donations
|
Donations
|
||||||
---------
|
---------
|
||||||
@ -279,4 +286,4 @@ License
|
|||||||
-------
|
-------
|
||||||
Released under the GNU General Public License v2
|
Released under the GNU General Public License v2
|
||||||
|
|
||||||
http://www.gnu.org/licenses/gpl-2.0.html
|
http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user