Giter Club home page Giter Club logo

pools_collaboration's Introduction

This repo is just a sketchbook for notes on collaboration efforts that can be done to enhance mining pools.

To do

Open Ethereum Pools

  • Create SA or Mena nodes for current coins' pools
    work in progress
  • Add estimated earnings 24h
    done, per worker and per miner
  • Add Earnings last 1 Hour
  • Add Earnings last 24 hour
    done, copied [Open-ubiq-pool changes](https://github.com/mapleshadow/open-ubiq-pool/)
  • Add selectable payout schema (PPS/PPLNS)
  • Add stratum 2.0.0 support - done
  • fix worker names to longer than 8 chars. (now 20)
  • add nicehash support to stratum - done
  • add graphing on backend for network hashrate, connected miners, connected workers, difficulty - done
  • fix the toHex build error - done
  • bring pool back to sourced from sammy repo, so all changes can be tracked backwards if needed for fresh builds - done
  • another payout schema
    • in which pool op defines period length, all shares and division amount of reward totals during round happen at end
  • Add ping check with special stratum port, then direct to lowest ping
  • Add helper for estimated earnings in USD, with BTC price from coinmarketcap and a config var to enable or disable the feature (for coins that are not listed yet, or show 0 if api doesn't work)
  • Add worker connected through which node
    done, added value to redis
  • Add worker connected through which diff
    done, added value to redis
  • Add Dynamic Difficulty port
  • Add Solo Port feature
  • Add SSL Stratum completed. can use STunnel for that purpose, maybe?
  • Add Pool Luck Feature similar to
  • Add and Enhance Code documentation
  • Add Multiple stratum region support for low latency
  • Add which worker found blocks ? and maybe on pool blocks page, add which miner found which block
  • Add Email Monitoring, for rigs down to miner (maybe an outside service reading redis)
  • Add Telegram notifications for downed rigs
  • Make website description a variable from config, add few words per page
    • Unit: 'ATH',
    • CoinName: 'Atheios',
  • Create PowerPoint slides (images) showing different components of running a pool and their interactions, services, dependencies, applications, configs, nodes, stratums โ€ฆ etc.
    work in progress
  • Change references to explorer in hbs files, move to environment.js
    • block explorerlink.tx = ''
    • blockexplorerlink.blockhash = ''
    • blockexplorerlink.txhash = ''
    • blockexplorerlink.blocknumber = ''
    • blockexplorerlink.Uncle = ''
      Done, moved these links to localization (languege) files
      
  • eye candy data inserted into db
    • shares per worker / period (defined in json)
    • accepted, rejected, stale
    • blocks last 24 hours per miner
    • block finder, on which diff and server
  • Pool Announcements: add announcements to the top of pools, get from json to be there on all pools with exclusion
  • Complete Translation and add Korean
  • On Miners list page, add most used server and diff per miner

Other Ideas

  • Enhance Pools Homepages
  • Pool signup for Listing on coin pages automation
  • Create an installation script/security script
  • Create better methods to ease the install process, its very confusing for new pool ops.
    • Inputs to Consider
      • link to the geth file
      • name of coin
      • abbreviation
      • average block time
      • block reward
      • pool fee
      • RPC port
  • Create better log file analysis features, possibly stored into redis for an admin page.

Server Security Notes

  • Disable Redis listen 0.0.0.0
  • Disable SSH Port 22
  • Disable Login with root
  • Disable Login with password
  • Close All ports except necessary
  • Close incoming SSH connections from 0.0.0.0 except from main servers

Notes

Current Pools' Features, Designs and Concepts (Benchmark)

  • Top Mining
    • Pool Homepage arrangement
    • menu design
    • Server Status
    • Help information and useful links on the side
    • Ticker Info
    • Tables design (Blocks, Miners, Workers...etc.)
    • About page
      • Glossary
      • Questions
      • TOS
    • Help page
      • Wallet Tutorial
  • 2Miners
    • Main Pools interface
      • Aggregated Hash power and pool statistics
      • Focus on Ping (clarification)
    • Coin Pool Homepage
      • Dashboard style
      • How many blocks found
      • How much paid to miners so far
    • Real Coin Pool Homepage
    • Standardized FAQ Page
    • A Blog with information related to mining
  • Minerpool.net
    • Homepage
      • Coin prices and fast comparison
    • Coin Pool Homepage
      • Geolocation
      • Variable Difficulty
    • Miners page
      • Last paid 1 hour
      • Last paid 24 hours
      • Estimated Earnings USD in 24 hours
      • Solo mining and Pool Mining
      • Blocks found and which worker ?
      • Unconfirmed payouts ???
  • Fairpool
  • Altpool
  • MoacPool.xyz
  • PPLNS.io

Go Lang Redis notes

Credits

If, any work was used, as part of our implementation, credits will be given here:

Contributors

  • Brian Bowen - System Administration / Security - phatblinkie
  • Mohannad Otaibi - Front-End Development / Coding - mo9a7i

pools_collaboration's People

Contributors

itsmylife44 avatar mo9a7i avatar phatblinkie avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.