mirror of
https://github.com/logos-messaging/logos-messaging-interop-tests.git
synced 2026-01-04 06:53:07 +00:00
Add filter stress scenarios & store
This commit is contained in:
parent
4f5ac4308e
commit
013b5028a0
@ -1,57 +1,79 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
# Stress Filter with high receiver (subscribe/unsubscribe) while publishing continuously.
|
||||||
|
set -e
|
||||||
STORE_NODES="/ip4/10.2.0.101/tcp/60001/p2p/16Uiu2HAkyte8uj451tGkbww4Mjcg6DRnmAHxNeWyF4zp23RbpG3n"
|
|
||||||
RELAY_NODE_REST_ADDRESS="http://127.0.0.1:8645"
|
STORE_NODES="/ip4/10.2.0.101/tcp/60001/p2p/16Uiu2HAkyte8uj451tGkbww4Mjcg6DRnmAHxNeWyF4zp23RbpG3n"
|
||||||
STORE_NODE_REST_ADDRESS="http://127.0.0.1:8644"
|
RELAY_NODE_REST_ADDRESS="http://127.0.0.1:8645"
|
||||||
PUBSUB_TOPIC="/waku/2/default-waku/proto"
|
STORE_NODE_REST_ADDRESS="http://127.0.0.1:8644"
|
||||||
CONTENT_TOPIC="/sonda/2/polls/proto"
|
PUBSUB_TOPIC="/waku/2/default-waku/proto"
|
||||||
PHASE_SLEEP=600
|
CONTENT_TOPIC="/sonda/2/polls/proto"
|
||||||
|
PHASE_SLEEP=120
|
||||||
echo "Running test..."
|
|
||||||
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
echo "Running test..."
|
||||||
echo "Bringing up simulator at $current_time"
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Bringing up simulator at $current_time"
|
||||||
cd ./waku-simulator
|
|
||||||
export SERVICENODE_CPU_CORES=0
|
cd ./waku-simulator
|
||||||
export POSTGRES_CPU_CORES=1-3
|
export SERVICENODE_CPU_CORES=0
|
||||||
export GF_SECURITY_ADMIN_USER=admin
|
export POSTGRES_CPU_CORES=1-3
|
||||||
export GF_SECURITY_ADMIN_PASSWORD=admin
|
export GF_SECURITY_ADMIN_USER=admin
|
||||||
docker compose up -d
|
export GF_SECURITY_ADMIN_PASSWORD=admin
|
||||||
while [ "$(docker inspect --format "{{.State.Status}}" $(docker compose ps -q servicenode))" != "running" ]; do
|
docker compose up -d
|
||||||
sleep 1
|
while [ "$(docker inspect --format "{{.State.Status}}" $(docker compose ps -q servicenode))" != "running" ]; do
|
||||||
done
|
sleep 1
|
||||||
cd ..
|
done
|
||||||
|
cd ..
|
||||||
cd ./sonda
|
|
||||||
docker build -t local-perf-sonda -f ./Dockerfile.sonda .
|
cd ./sonda
|
||||||
cat > ./perf-test.env <<EOF
|
docker build -t local-perf-sonda -f ./Dockerfile.sonda .
|
||||||
RELAY_NODE_REST_ADDRESS=${RELAY_NODE_REST_ADDRESS}
|
cat > ./perf-test.env <<EOF
|
||||||
STORE_NODE_REST_ADDRESS=${STORE_NODE_REST_ADDRESS}
|
RELAY_NODE_REST_ADDRESS=${RELAY_NODE_REST_ADDRESS}
|
||||||
STORE_NODES=${STORE_NODES}
|
STORE_NODE_REST_ADDRESS=${STORE_NODE_REST_ADDRESS}
|
||||||
QUERY_DELAY=5
|
STORE_NODES=${STORE_NODES}
|
||||||
CLUSTER_ID=66
|
QUERY_DELAY=0.5
|
||||||
SHARD=0
|
CLUSTER_ID=66
|
||||||
HEALTH_THRESHOLD=0.9
|
SHARD=0
|
||||||
PUBSUB_TOPIC=${PUBSUB_TOPIC}
|
HEALTH_THRESHOLD=0.9
|
||||||
CONTENT_TOPIC=${CONTENT_TOPIC}
|
PUBSUB_TOPIC=${PUBSUB_TOPIC}
|
||||||
EOF
|
CONTENT_TOPIC=${CONTENT_TOPIC}
|
||||||
docker run --env-file ./perf-test.env -l sonda -d --network host local-perf-sonda
|
EOF
|
||||||
cd ..
|
docker run --env-file ./perf-test.env -l sonda -d --network host local-perf-sonda
|
||||||
|
cd ..
|
||||||
cd ./lpt
|
|
||||||
export LPT_IMAGE=harbor.status.im/wakuorg/liteprotocoltester:latest
|
cd ./lpt
|
||||||
export START_PUBLISHING_AFTER=15
|
export LPT_IMAGE=harbor.status.im/wakuorg/liteprotocoltester:latest
|
||||||
export NUM_PUBLISHER_NODES=20
|
export START_PUBLISHING_AFTER=15
|
||||||
export NUM_RECEIVER_NODES=5
|
export NUM_PUBLISHER_NODES=12
|
||||||
export MESSAGE_MIN_BYTES=4096
|
export NUM_RECEIVER_NODES=30
|
||||||
export MESSAGE_MAX_BYTES=65536
|
export MESSAGE_MIN_BYTES=2048
|
||||||
export LIGHTPUSH_INTERVAL_MS=40
|
export MESSAGE_MAX_BYTES=32768
|
||||||
docker compose up -d
|
export LIGHTPUSH_INTERVAL_MS=80
|
||||||
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
docker compose up -d
|
||||||
echo "Scenario 1 started (20 pub / 5 recv, 40ms, 4–64KB). Time: $current_time"
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
sleep ${PHASE_SLEEP}
|
echo "Phase 1: up recv, 12 pub / 30 recv (80ms, 2–32KB) $current_time"
|
||||||
docker compose down
|
sleep ${PHASE_SLEEP}
|
||||||
cd ..
|
|
||||||
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
docker compose down receivernode
|
||||||
echo "Scenario 1 finished at $current_time"
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 2: down recv, publishers + sonda $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose up -d receivernode
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 3: up recv again $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down receivernode
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 4: down recv again $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose up -d receivernode
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 5: up recv final $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down
|
||||||
|
cd ..
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Scenario 3 finished at $current_time"
|
||||||
87
scripts/Lite_protocol_scripts/store/Store_multinodes.sh
Normal file
87
scripts/Lite_protocol_scripts/store/Store_multinodes.sh
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
# Stress Store with multiple Store nodes while running phased LPT publishers/receivers.
|
||||||
|
|
||||||
|
STORE_NODES="/ip4/10.2.0.101/tcp/60001/p2p/16Uiu2HAkyte8uj451tGkbww4Mjcg6DRnmAHxNeWyF4zp23RbpG3n,/ip4/10.2.0.102/tcp/60001/p2p/16Uiu2HA7abcDEF451tGkbzz4Mjcg6DRnmAHxNeWyF4zp23RbpXYZ2,/ip4/10.2.0.103/tcp/60001/p2p/16Uiu2HA9LMNoPQ451tGkbww4Mjcg6DRnmAHxNeWyF4zp23Rbppppp"
|
||||||
|
RELAY_NODE_REST_ADDRESS="http://127.0.0.1:8645"
|
||||||
|
STORE_NODE_REST_ADDRESS="http://127.0.0.1:8644"
|
||||||
|
PUBSUB_TOPIC="/waku/2/default-waku/proto"
|
||||||
|
CONTENT_TOPIC="/sonda/2/polls/proto"
|
||||||
|
PHASE_SLEEP=300
|
||||||
|
|
||||||
|
echo "Running test..."
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Bringing up simulator at $current_time"
|
||||||
|
|
||||||
|
cd ./waku-simulator
|
||||||
|
export SERVICENODE_CPU_CORES=0
|
||||||
|
export POSTGRES_CPU_CORES=1-3
|
||||||
|
export GF_SECURITY_ADMIN_USER=admin
|
||||||
|
export GF_SECURITY_ADMIN_PASSWORD=admin
|
||||||
|
docker compose up -d
|
||||||
|
while [ "$(docker inspect --format "{{.State.Status}}" $(docker compose ps -q servicenode))" != "running" ]; do
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
cd ./sonda
|
||||||
|
docker build -t local-perf-sonda -f ./Dockerfile.sonda .
|
||||||
|
cat > ./perf-test.env <<EOF
|
||||||
|
RELAY_NODE_REST_ADDRESS=${RELAY_NODE_REST_ADDRESS}
|
||||||
|
STORE_NODE_REST_ADDRESS=${STORE_NODE_REST_ADDRESS}
|
||||||
|
STORE_NODES=${STORE_NODES}
|
||||||
|
QUERY_DELAY=0.25
|
||||||
|
CLUSTER_ID=66
|
||||||
|
SHARD=0
|
||||||
|
HEALTH_THRESHOLD=0.9
|
||||||
|
PUBSUB_TOPIC=${PUBSUB_TOPIC}
|
||||||
|
CONTENT_TOPIC=${CONTENT_TOPIC}
|
||||||
|
EOF
|
||||||
|
docker run --env-file ./perf-test.env -l sonda -d --network host local-perf-sonda
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
cd ./lpt
|
||||||
|
export LPT_IMAGE=harbor.status.im/wakuorg/liteprotocoltester:latest
|
||||||
|
export START_PUBLISHING_AFTER=15
|
||||||
|
|
||||||
|
export NUM_PUBLISHER_NODES=10
|
||||||
|
export NUM_RECEIVER_NODES=10
|
||||||
|
export MESSAGE_MIN_BYTES=2048
|
||||||
|
export MESSAGE_MAX_BYTES=32768
|
||||||
|
export LIGHTPUSH_INTERVAL_MS=100
|
||||||
|
docker compose up -d
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 1: 10 pub / 10 recv (100ms, 2–32KB) $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down
|
||||||
|
export NUM_PUBLISHER_NODES=15
|
||||||
|
export NUM_RECEIVER_NODES=15
|
||||||
|
export MESSAGE_MIN_BYTES=4096
|
||||||
|
export MESSAGE_MAX_BYTES=65536
|
||||||
|
export LIGHTPUSH_INTERVAL_MS=80
|
||||||
|
docker compose up -d
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 2: 15 pub / 15 recv (80ms, 4–64KB) $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down
|
||||||
|
export NUM_PUBLISHER_NODES=20
|
||||||
|
export NUM_RECEIVER_NODES=10
|
||||||
|
export MESSAGE_MIN_BYTES=2048
|
||||||
|
export MESSAGE_MAX_BYTES=32768
|
||||||
|
export LIGHTPUSH_INTERVAL_MS=80
|
||||||
|
docker compose up -d
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 3: 20 pub / 10 recv (80ms, 2–32KB) $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down receivernode
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Phase 4: receivers down, publishers + sonda $current_time"
|
||||||
|
sleep ${PHASE_SLEEP}
|
||||||
|
|
||||||
|
docker compose down
|
||||||
|
cd ..
|
||||||
|
current_time=$(date +"%Y-%m-%d %H:%M:%S")
|
||||||
|
echo "Scenario 2 finished at $current_time"
|
||||||
Loading…
x
Reference in New Issue
Block a user