goqlc

package module
v1.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2021 License: MIT Imports: 0 Imported by: 0

README

Logo

Actions Status codecov


QLC Chain is a next generation public blockchain designed for the NaaS. It deploys a multidimensional Block Lattice architecture and uses virtual machines (VM) to manage and support integrated Smart Contract functionality. Additionally, QLC Chain utilizes dual consensus: Delegated Proof of Stake (DPoS), and Shannon Consensus, which is a novel consensus developed by the QLC Chain team. Through the use of this dual consensus protocol, QLC Chain is able to deliver a high number of transactions per second (TPS), massive scalability and an inherently decentralized environment for NaaS related decentralized applications (dApp). The framework of QLC Chain will enable everyone to operate network services and benefit from it.

Network-as-a-Service (NaaS) is sometimes listed as a separate cloud provider along with Infrastructure- as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS). This factors out networking, firewalls, related security, etc.

NaaS can include flexible and extended Virtual Private Network (VPN), bandwidth on demand, custom routing, multicast protocols, security firewall, intrusion detection and prevention, Wide Area Network (WAN), content addressing and filtering, and antivirus.


Key Features

  • Multidimensional Block Lattice Structure
  • QLC Chain Smart Contract
  • Dual Consensus Protocol

    For more information, see YellowPaper.

Build and Run

make clean build
./gqlc

Docker

You can build the docker image yourself or download it from docker hub

Build docker images

cd docker
./build.sh

Download docker images from docker hub

docker pull qlcchain/go-qlc:latest

Start docker container

You can choose to run a normal node without an account or run an account node.

Run a normal node without an account
docker container run -d --name go-qlc \
    -p 9734:9734 \
    -p 127.0.0.1:9735:9735 \
    -p 127.0.0.1:9736:9736 \
    qlcchain/go-qlc:latest
Run an account node

You only need to assign a value to the environment variable seed to run the account node

docker container run -d --name go-qlc \
    -p 9734:9734 \
    -p 127.0.0.1:9735:9735 \
    -p 127.0.0.1:9736:9736 \
    qlcchain/go-qlc:latest --seed=B4F6494E3DD8A036EFF547C0293055B2A0644605DE4D9AC91B45343CD0E0E559
Run node by Docker Compose
  • create docker-compose.yml

    version: "3.5"
    
    services:
        qlcchain_node:
            image: qlcchain/go-qlc:${version}
            container_name: qlcchain_node
            command: ["--configParams=rpc.rpcEnabled=true", "--seed=B4F6494E3DD8A036EFF547C0293055B2A0644605DE4D9AC91B45343CD0E0E559"]
            ports:
                - "9734:9734"
                - "9735:9735"
                - "127.0.0.1:9736:9736"
            networks:
                - qlcchain
            volumes:
                - type: bind
                    source: ./data/
                    target: /qlcchain/.gqlcchain/
            restart: unless-stopped
    
    networks:
        qlcchain:
            name: qlcchain
    
    
  • run

    docker-compose down -v && docker-compose up -d
    

Contributions

We love reaching out to the open-source community and are open to accepting issues and pull-requests.

For all code contributions, please ensure they adhere as close as possible to the contributing guidelines

If you...

  1. love the work we are doing,
  2. want to work full-time with us,
  3. or are interested in getting paid for working on open-source projects

... we're hiring.

To grab our attention, just make a PR and start contributing.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
rpc
db
util
Package common contains various helper functions.
Package common contains various helper functions.
util/hexutil
Package hexutil implements hex encoding with 0x prefix.
Package hexutil implements hex encoding with 0x prefix.
pov
ed25519
Package ed25519 implements the Ed25519 signature algorithm.
Package ed25519 implements the Ed25519 signature algorithm.
random
Package random provides some functions to securely generate random bytes and numbers.
Package random provides some functions to securely generate random bytes and numbers.
p2p
rpc
api
grpc/proto
Package proto is a reverse proxy.
Package proto is a reverse proxy.
vm
abi

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL