From b44b6bba351beb97354cc3a614aba34b46bfaac3 Mon Sep 17 00:00:00 2001 From: Matthew Little Date: Fri, 7 Mar 2014 00:43:01 -0700 Subject: [PATCH 1/4] Update README.md --- README.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index e967da6..2136404 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,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 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 -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. +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. 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 processor that monitors for confirmed submitted blocks then send out payments according to shares accumulated in the @@ -278,4 +277,4 @@ License ------- Released under the GNU General Public License v2 -http://www.gnu.org/licenses/gpl-2.0.html \ No newline at end of file +http://www.gnu.org/licenses/gpl-2.0.html From 9d0b5ebac9c64f735784606e7b5f361232f8ef41 Mon Sep 17 00:00:00 2001 From: Matthew Little Date: Fri, 7 Mar 2014 00:47:43 -0700 Subject: [PATCH 2/4] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 2136404..0b7c5fe 100644 --- a/README.md +++ b/README.md @@ -104,9 +104,9 @@ Description of options: "enabled": true, /* 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 - via a validateaddress API call to the daemon. Miners with invalid addresses will be - rejected. */ + name. If this option is true, on worker authentication, their address will be + verified via a validateaddress API call to the daemon. Miners with invalid addresses + will be rejected. */ "validateWorkerAddress": true, /* Every this many seconds check for confirmed blocks and send out payments. */ From 7bdd945b9cb4fefc3da3863064910e0aae553e66 Mon Sep 17 00:00:00 2001 From: Matthew Little Date: Fri, 7 Mar 2014 00:56:19 -0700 Subject: [PATCH 3/4] Update README.md --- README.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 0b7c5fe..49c7740 100644 --- a/README.md +++ b/README.md @@ -95,12 +95,14 @@ Description of options: "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 - and disable mpos which will allow this portal to handle all share payments.2) Enable mpos - and disabled internal which wil allow MPOS to handle all share payments. */ + /* This determines what to do with submitted shares (and stratum worker authentication). + You have two options: + 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": { - "internal": { //Enabled this options for share payments to be processed and sent locally + "internal": { "enabled": true, /* When workers connect, to receive payments, their address must be used as the worker From f6c2d4246b7e80b5502bb2b0c68d820b049f25e4 Mon Sep 17 00:00:00 2001 From: Matthew Little Date: Fri, 7 Mar 2014 01:10:17 -0700 Subject: [PATCH 4/4] Update README.md --- README.md | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 49c7740..1eee12a 100644 --- a/README.md +++ b/README.md @@ -170,8 +170,8 @@ Description of options: detects those and disconnects them. */ "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 - reduce system/network load. Also useful to fight against flooding attacks. */ + /* If a worker is submitting a high threshold of invalid shares we can temporarily ban them + to reduce system/network load. Also useful to fight against flooding attacks. */ "banning": { "enabled": true, "time": 600, //How many seconds to ban worker for @@ -249,16 +249,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) + + ##### [Optional, recommended] Setting up blocknotify - * In `config.json` set the port and password for `blockNotifyListener` - * In your daemon conf file set the `blocknotify` command to use: +1. In `config.json` set the port and password for `blockNotifyListener` +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 +271,9 @@ For more information on these configuration options see the [pool module documen 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 ---------