drandreaskrueger / chainhammer

fire many transactions at Ethereum node, then produce diagrams of TPS, blocktime, gasUsed and gasLimit, and blocksize.
Other
122 stars 57 forks source link

RPCaddress; how to talk to an Ethereum node, tutorial resources #22

Closed Mohammed-alzuharey closed 3 years ago

Mohammed-alzuharey commented 4 years ago

Hello Dr I installed the chainhammer on my machine as you told me using scripts/install.sh docker Ubuntu
and i implemented first test
CH_TXS=1000 CH_THREADING="sequential" ./run.sh $HOSTNAME-TestRPC testrpc Every things fine Then implemented 7nodes quorum example locally on machine OS: Ubuntu 20.04 virtual machine consensus algorithm : clique transaction : send private transaction between node1 and node7 as follow mohamed@mohamed-VirtualBox:~/quorum-examples/examples/7nodes$ ./runscript.sh private-contract.js Contract transaction send: TransactionHash: 0xf734748a660ada751edf7736311137b0eac76dcebab71d8889e9928cd6059751 waiting to be mined... true Now , how use chainhammer to test performance of my local network (7nodes example ) ? thanks

drandreaskrueger commented 4 years ago

:+1:

drandreaskrueger commented 4 years ago

how use

First set it all up: https://github.com/drandreaskrueger/chainhammer/issues/21#issuecomment-707997775

Then using your own network work through the step by step procedure https://github.com/drandreaskrueger/chainhammer/blob/master/docs/azure.md#cloud-connection-attempt

Mohammed-alzuharey commented 4 years ago

Good morning Dr I executed all steps which told me in: #21 (comment) and install chainhammer_nodocker and run first test CH_TXS=200 CH_THREADING="sequential" ./run.sh TestRPC testrpc all things good (See that image, and those .md and .html pages)

but when go to change ports and execute (./is_up.py) command I waiting for long time without result (env) mohamed@mohamed-VirtualBox:~/chainhammer_nodocker/hammer$ ./is_up.py how can solve this problem ? Thanks for your attention

drandreaskrueger commented 4 years ago

./run.sh TestRPC testrpc
all things good

nice one.

So we have indeed solved for you the problems of the previous issue. https://github.com/drandreaskrueger/chainhammer/issues/21 . Great.

Chainhammer on your machine ... is working. Good.


when go to change ports and execute ./is_up.py command I waiting for long time

Yes, you have to fix that first.

Until ./is_up.py is working fine, nothing else will.

On which port is the RPC of you network node? Is your RPC open?

The page docs/azure.md gives some hints too.


Your questions look to me as if your knowledge about Ethereum is still a bit limited.

Perhaps you have to put in some learning first.

Do some reading, about Ethereum, the RPC API, etc.

How to use the Ethereum RPC API

How to use the Ethereum RPC API in Python

And why not also work through some tutorials?


The formatting of your issue text is was really strange.

Use triple back-ticks to show code.

Learn this: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet

drandreaskrueger commented 3 years ago

If you get this call working on your network, then the is_up.py should work too, and likely everything else too:

(True, None) <-- simple_RPC_call() <-- curl_post() <-- RPCaddress

Mohammed-alzuharey commented 3 years ago

Good morning Dr Thank you for advises ... If i implemented quorum network locally (7nodes examples) on my system (Ubuntu vm 20.04) ... Can i test it on chainhammer using next commands :- CH_TXS=20000 CH_THREADING="threaded2 20" ./run.sh yourNaming geth-clique OR export CH_QUORUM=true ./run-all_small.sh Thanks

drandreaskrueger commented 3 years ago

No

drandreaskrueger commented 3 years ago

go back up to here: https://github.com/drandreaskrueger/chainhammer/issues/22#issuecomment-710885885

Mohammed-alzuharey commented 3 years ago

Ok ... I read on RPC API as you told me . and this command( (True, None) <-- simple_RPC_call() <-- curl_post() <-- RPCaddress ) dont work on my device and still have same problem I mean cannot connect with azure cloud using ./is_up.py 😔

drandreaskrueger commented 3 years ago

yes you have to solve this first

https://github.com/drandreaskrueger/chainhammer/issues/22#issuecomment-712723412

drandreaskrueger commented 3 years ago

until you can talk to your network via RPC, nothing will work.

Mohammed-alzuharey commented 3 years ago

Good night Dr I tried many times and patched the RPCaddress'es from localhost:8545 to jtessera.blockchain.azure.com:3200 by adding
sed -i "s/RPCaddress='http:\/\/localhost:8545'/RPCaddress='https:\/\/jtessera.blockchain.azure.com:3200\/fqlf6UcrcBJPQjoX5RkAx3Nv'/g" hammer/config.py

sed -i "s/RPCaddress2='http:\/\/localhost:8545'/RPCaddress2='https:\/\/jtessera.blockchain.azure.com:3200\/fqlf6UcrcBJPQjoX5RkAx3Nv'/g" hammer/config.py to quorum-configure.sh file

and check the connection of localhost using : telnet localhost 8545command Trying 127.0.0.1 ... connected to localhost . but still same problem .... what you suggestions for me ? thanks

drandreaskrueger commented 3 years ago

I have created a new simplified testing script for you, and linked to it in the instructions:

May that help you.

Keep on learning about Ethereum, and about your network ... until that script also runs through and shows "Yes, full success..." when NOT using the above geth example client, but YOUR network node.

Mohammed-alzuharey commented 3 years ago

Good morning Dr ... Thank you for response I downloaded test_RPC.py and installed pip3 put when run command in terminal 1 get error as follow mohamed@mohamed-VirtualBox:~$ python3 test_RPC.py Start a network node, for example by: geth --rpc --dev Press ENTER when ready

Using 'http://localhost:8545' to query RPC, with payload '{'method': 'web3_clientVersion', 'params': [], 'jsonrpc': '2.0', 'id': 1}' Bad: (<class 'requests.exceptions.ConnectionError'>) HTTPConnectionPool(host='localhost', port=8545): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd1611644c0>: Failed to establish a new connection: [Errno 111] Connection refused')) Try again...

drandreaskrueger commented 3 years ago

Yes to that error message, exactly, it's good that it's there. You must now fix THAT. That's why I built that new script for you.

What you see there is your sole problem that you have for weeks, and just refuse to solve by yourself. The new script test_RPC.py is only there to isolate that problem. It does not at all depend on chainhammer.

If you cannot fix it yourself, I suggest you find someone else who can. Perhaps even consider to pay someone?