[tm-bench] update tm-monitor

This commit is contained in:
Anton Kaliaev
2017-08-04 13:11:43 -04:00
parent 330f38a77a
commit 877e8e31f7
3 changed files with 23 additions and 22 deletions

22
tm-bench/glide.lock generated
View File

@ -1,12 +1,12 @@
hash: b963733b341869e0667dde0c93f9be17fdf002ab4e92ae8778562a2b94580de8 hash: c6b00494f233e07baa1f506054b4a17fbd9230b7a7cf83469ddf32c1afb0aa6f
updated: 2017-07-29T18:52:35.221739544Z updated: 2017-08-04T16:23:50.471665666Z
imports: imports:
- name: github.com/btcsuite/btcd - name: github.com/btcsuite/btcd
version: 47885ab8702485be6b6f87a03d4f3be0bc5c982c version: 47885ab8702485be6b6f87a03d4f3be0bc5c982c
subpackages: subpackages:
- btcec - btcec
- name: github.com/go-kit/kit - name: github.com/go-kit/kit
version: 19463ea8b215413a29c3513aa3a76181f4bac58d version: 8e03b4c61a9cf94dd91cd842c7cdc669729e873f
subpackages: subpackages:
- log - log
- log/level - log/level
@ -44,16 +44,12 @@ imports:
- extra25519 - extra25519
- name: github.com/tendermint/go-crypto - name: github.com/tendermint/go-crypto
version: 95b7c9e09c49b91bfbb71bb63dd514eb55450f16 version: 95b7c9e09c49b91bfbb71bb63dd514eb55450f16
- name: github.com/tendermint/go-rpc
version: 15d5b2ac497da95cd2dceb9c087910ccec4dacb2
subpackages:
- types
- name: github.com/tendermint/go-wire - name: github.com/tendermint/go-wire
version: 5f88da3dbc1a72844e6dfaf274ce87f851d488eb version: 5f88da3dbc1a72844e6dfaf274ce87f851d488eb
subpackages: subpackages:
- data - data
- name: github.com/tendermint/tendermint - name: github.com/tendermint/tendermint
version: b467515719e686e4678e6da4e102f32a491b85a0 version: 0013053fae3fb7611c392ebcff15352bb7ec717b
subpackages: subpackages:
- config - config
- p2p - p2p
@ -71,12 +67,12 @@ imports:
- log - log
- merkle - merkle
- name: github.com/tendermint/tools - name: github.com/tendermint/tools
version: d205ae1f98c946b2a057f62bfcd505b40ea52031 version: 0b1866f431f544592a5db4789859cf451b8250c4
subpackages: subpackages:
- tm-monitor/eventmeter - tm-monitor/eventmeter
- tm-monitor/monitor - tm-monitor/monitor
- name: golang.org/x/crypto - name: golang.org/x/crypto
version: 558b6879de74bc843225cde5686419267ff707ca version: 42ff06aea7c329876e5a0fe94acc96902accf0ad
subpackages: subpackages:
- curve25519 - curve25519
- nacl/box - nacl/box
@ -97,18 +93,18 @@ imports:
- lex/httplex - lex/httplex
- trace - trace
- name: golang.org/x/text - name: golang.org/x/text
version: 836efe42bb4aa16aaa17b9c155d8813d336ed720 version: 3bd178b88a8180be2df394a1fbb81313916f0e7b
subpackages: subpackages:
- secure/bidirule - secure/bidirule
- transform - transform
- unicode/bidi - unicode/bidi
- unicode/norm - unicode/norm
- name: google.golang.org/genproto - name: google.golang.org/genproto
version: b0a3dcfcd1a9bd48e63634bd8802960804cf8315 version: 09f6ed296fc66555a25fe4ce95173148778dfa85
subpackages: subpackages:
- googleapis/rpc/status - googleapis/rpc/status
- name: google.golang.org/grpc - name: google.golang.org/grpc
version: 971efedc2078cb1efd8111d12432813084bc628d version: 53ae6b7e909cb0bc4525c4c4454756a43da867dd
subpackages: subpackages:
- codes - codes
- credentials - credentials

View File

@ -6,17 +6,15 @@ import:
- package: github.com/gorilla/websocket - package: github.com/gorilla/websocket
- package: github.com/pkg/errors - package: github.com/pkg/errors
- package: github.com/rcrowley/go-metrics - package: github.com/rcrowley/go-metrics
- package: github.com/tendermint/go-rpc
version: develop
subpackages:
- types
- package: github.com/tendermint/tendermint - package: github.com/tendermint/tendermint
version: 0013053fae3fb7611c392ebcff15352bb7ec717b
subpackages: subpackages:
- rpc/lib/types
- types - types
- package: github.com/tendermint/tmlibs - package: github.com/tendermint/tmlibs
subpackages: subpackages:
- log - log
- package: github.com/tendermint/tools - package: github.com/tendermint/tools
version: develop version: 0b1866f431f544592a5db4789859cf451b8250c4
subpackages: subpackages:
- tm-monitor/monitor - tm-monitor/monitor

View File

@ -3,6 +3,7 @@ package main
import ( import (
"encoding/binary" "encoding/binary"
"encoding/hex" "encoding/hex"
"encoding/json"
"fmt" "fmt"
"math/rand" "math/rand"
"net/http" "net/http"
@ -14,12 +15,12 @@ import (
"github.com/gorilla/websocket" "github.com/gorilla/websocket"
"github.com/pkg/errors" "github.com/pkg/errors"
rpctypes "github.com/tendermint/go-rpc/types" rpctypes "github.com/tendermint/tendermint/rpc/lib/types"
"github.com/tendermint/tmlibs/log" "github.com/tendermint/tmlibs/log"
) )
const ( const (
sendTimeout = 500 * time.Millisecond sendTimeout = 10 * time.Second
// see https://github.com/tendermint/go-rpc/blob/develop/server/handlers.go#L313 // see https://github.com/tendermint/go-rpc/blob/develop/server/handlers.go#L313
pingPeriod = (30 * 9 / 10) * time.Second pingPeriod = (30 * 9 / 10) * time.Second
) )
@ -124,13 +125,19 @@ func (t *transacter) sendLoop(connIndex int) {
for i := 0; i < t.Rate; i++ { for i := 0; i < t.Rate; i++ {
// each transaction embeds connection index and tx number // each transaction embeds connection index and tx number
tx := generateTx(connIndex, txNumber) tx := generateTx(connIndex, txNumber)
paramsJson, err := json.Marshal(map[string]interface{}{"tx": hex.EncodeToString(tx)})
if err != nil {
fmt.Printf("failed to encode params: %v\n", err)
os.Exit(1)
}
rawParamsJson := json.RawMessage(paramsJson)
c.SetWriteDeadline(time.Now().Add(sendTimeout)) c.SetWriteDeadline(time.Now().Add(sendTimeout))
err := c.WriteJSON(rpctypes.RPCRequest{ err = c.WriteJSON(rpctypes.RPCRequest{
JSONRPC: "2.0", JSONRPC: "2.0",
ID: "", ID: "",
Method: "broadcast_tx_async", Method: "broadcast_tx_async",
Params: []interface{}{hex.EncodeToString(tx)}, Params: &rawParamsJson,
}) })
if err != nil { if err != nil {
fmt.Printf("%v. Try increasing the connections count and reducing the rate.\n", errors.Wrap(err, "txs send failed")) fmt.Printf("%v. Try increasing the connections count and reducing the rate.\n", errors.Wrap(err, "txs send failed"))