Skip to content

Commit

Permalink
Merge pull request #95 from RTradeLtd/v3.4.2
Browse files Browse the repository at this point in the history
TemporalX v3.4.2 Docs
  • Loading branch information
bonedaddy authored May 29, 2020
2 parents 4d59b12 + 44fa42a commit 0206bd7
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 7 deletions.
2 changes: 2 additions & 0 deletions doc/CONFIGURATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,8 @@ node:
# the value here will be used as the private network shared secret key
# default is empty string ("") which means use the public network
swarm_key: thisinotarealswarmtestkey
# allows specifying additional peers to use when bootstrapping
bootstrap_peers: [ "/ip4/207.6.222.55/tcp/4002/ipfs/QmPvnFXWAz1eSghXD6JKpHxaGjbVo4VhBXY2wdBxKPbne5", "/ip4/207.6.222.55/tcp/4003/ipfs/QmXow5Vu8YXqvabkptQ7HddvNPpbLhXzmmU53yPCM54EQa"]
# general node configuration
opts:
# enables a bloom+arc cache on top of the blockstore
Expand Down
39 changes: 32 additions & 7 deletions doc/GETTING_STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ esac

The command line client is called `tex-cli`, and invoking the command without any arguments, or with the `--help`/`-h` flag will display the following information:

**Note: where it says `<VERSION>` will be the git release tag when the binary was built, this is from `v3.4.1-rc4`**
**Note: where it says `<VERSION>` will be the git release tag when the binary was built, this is from `v3.4.2`**

```
NAME:
Expand All @@ -82,27 +82,31 @@ USAGE:
tex-cli [global options] command [command options] [arguments...]
VERSION:
v3.4.1-rc4
<VERSION>
AUTHORS:
Alex Trottier <[email protected]>
George Xie <[email protected]>
COMMANDS:
admin admin commands
util generalized utility functions
client gRPC client subcommands
config configuration management tools
replication, rep Create, update, and monitor replications
server run the gRPC api server
node runs a standalone node without the API
license license management
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--bootstrap, --bp bootstrap against public ipfs (default: false)
--config PATH, --cfg PATH load the configuration file at PATH (default: "./config.yml")
--config.env, --cfg.e load configuration file from environment variables (default: false)
--help, -h show help (default: false)
--version, -v print the version (default: false)
--bootstrap, --bp bootstrap against public ipfs (default: false)
--bootstrap.periodic, --bpp enables periodic reboostrapping (default: false)
--bootstrap.periodic.interval value, --bppi value how often to run periodic rebootstrapping (default: 2m0s)
--config PATH, --cfg PATH load the configuration file at PATH (default: "./config.yml")
--config.env, --cfg.e load configuration file from environment variables (default: false)
--help, -h show help (default: false)
--version, -v print the version (default: false)
```

## Configuration Initialization
Expand Down Expand Up @@ -145,6 +149,27 @@ To stop the node after running the server, you can use any of the following os c

Do not abort the process unless you want to face possible data corruption. If you do need ot abort the shutdown process, waiting about 10-15 seconds after the shutdown process is started generally is enough to wait for all internal process to finish, but it is recommmended to wait the full 30 seconds it is required which typically only happens with pending gRPC calls.

## Node Bootstrapping

TemporalX includes additional bootstrap capabilities to ensure that you can always maintain a healthy set of connected peers. Along with the basic `--bootstrap,--bp` flags which does a one time connection to a preset list of peers, and starts the DHT bootstrap function which is responsible for maintaining the routing table, there is an optional "periodic bootstrap" functionality.

This periodic bootstrap functionality will run at a user-configurable interval (default of 2 minutes), and every iteration will connect to the default bootstrap peer list containing approximately 30 peers, as well as 10 randomly selected peers from our peerstore. This provides a very lightweight method of staying connected to a number of different peers, and in practice TemporalX nodes using periodic bootstrap will be much better connected than go-ipfs.


As noted by the following output with the TemporalX node not being online for more than minutes, and go-ipfs having approximately 1 week uptime, the TemporalX node is much better connected than go-ipfs.

```
rtrade@capecod:~/stress$ tex-cli client --ea 192.168.1.201:9090 --insecure=true node peer count
connected peer count: 746
rtrade@capecod:~/stress$ ipfs swarm peers | wc -l
133
```

To enable periodic bootstrap you can use `--bootstrap.periodic, --bpp` and should you want to configure the interval to something other than the default 2 minutes `--bootstrap.periodic.interval value, --bppi value` where `value` is a time.Duration value such as `2m0s, 1hr` etc...

Note that to use periodic bootstrap, you must also use the regular bootstrapping method enabled with `--boostrap, --bp`.


## Client Overview

All non-replication commands that use the gRPC API are grouped under the `client` command. Previously you used to be able to configure the client via the yaml configuration file, however this proved to be a bit difficult to use via the CLI and involved shipping copies of the config file to whatever machine you were using the CLI on. This has been refactored to use the following two flags under the `client` command:
Expand Down

0 comments on commit 0206bd7

Please sign in to comment.