From 4159aa7e6ea7cc11df01753aeb7bf461490cedf7 Mon Sep 17 00:00:00 2001 From: Cristian Chiru Date: Tue, 30 Jan 2024 00:27:46 +0200 Subject: [PATCH] revert debug --- .github/workflows/benchmark.yml | 194 ++++++++++++++++---------------- nats/nats.go | 2 +- 2 files changed, 97 insertions(+), 99 deletions(-) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index a5249767..243b2879 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -19,64 +19,64 @@ name: Benchmark jobs: Compare: runs-on: ubuntu-latest - # services: - # arangodb: - # image: 'arangodb:latest' - # env: - # ARANGO_NO_AUTH: 1 - # ports: - # - '8529:8529' - # dynamodb: - # image: 'amazon/dynamodb-local:latest' - # ports: - # - '8000:8000' - # memcached: - # image: 'memcached:latest' - # ports: - # - '11211:11211' - # mongo: - # image: 'mongo:latest' - # ports: - # - '27017:27017' - # mssql: - # image: 'mcmoe/mssqldocker:latest' - # ports: - # - '1433:1433' - # env: - # ACCEPT_EULA: Y - # SA_PASSWORD: MsSql!1234 - # MSSQL_DB: master - # MSSQL_USER: sa - # MSSQL_PASSWORD: MsSql!1234 - # options: >- - # --health-cmd "/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD -Q 'select 1' -b -o /dev/null" - # --health-interval 1s - # --health-timeout 30s - # --health-start-period 10s - # --health-retries 20 - # mysql: - # image: 'mysql:latest' - # env: - # MYSQL_DATABASE: fiber - # MYSQL_USER: username - # MYSQL_PASSWORD: password - # MYSQL_ROOT_PASSWORD: password - # ports: - # - '3306:3306' - # options: >- - # --health-cmd "mysqladmin ping" --health-interval 10s --health-timeout - # 5s --health-retries 5 - # postgres: - # image: 'postgres:latest' - # ports: - # - '5432:5432' - # env: - # POSTGRES_DB: fiber - # POSTGRES_USER: username - # POSTGRES_PASSWORD: "pass#w%rd" - # options: >- - # --health-cmd pg_isready --health-interval 10s --health-timeout 5s - # --health-retries 5 + services: + arangodb: + image: 'arangodb:latest' + env: + ARANGO_NO_AUTH: 1 + ports: + - '8529:8529' + dynamodb: + image: 'amazon/dynamodb-local:latest' + ports: + - '8000:8000' + memcached: + image: 'memcached:latest' + ports: + - '11211:11211' + mongo: + image: 'mongo:latest' + ports: + - '27017:27017' + mssql: + image: 'mcmoe/mssqldocker:latest' + ports: + - '1433:1433' + env: + ACCEPT_EULA: Y + SA_PASSWORD: MsSql!1234 + MSSQL_DB: master + MSSQL_USER: sa + MSSQL_PASSWORD: MsSql!1234 + options: >- + --health-cmd "/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD -Q 'select 1' -b -o /dev/null" + --health-interval 1s + --health-timeout 30s + --health-start-period 10s + --health-retries 20 + mysql: + image: 'mysql:latest' + env: + MYSQL_DATABASE: fiber + MYSQL_USER: username + MYSQL_PASSWORD: password + MYSQL_ROOT_PASSWORD: password + ports: + - '3306:3306' + options: >- + --health-cmd "mysqladmin ping" --health-interval 10s --health-timeout + 5s --health-retries 5 + postgres: + image: 'postgres:latest' + ports: + - '5432:5432' + env: + POSTGRES_DB: fiber + POSTGRES_USER: username + POSTGRES_PASSWORD: "pass#w%rd" + options: >- + --health-cmd pg_isready --health-interval 10s --health-timeout 5s + --health-retries 5 steps: - name: Fetch Repository @@ -88,62 +88,60 @@ jobs: # NOTE: Keep this in sync with the version from go.mod go-version: "1.21.x" - # - name: Install Azurite - # run: | - # docker run -d -p 10000:10000 mcr.microsoft.com/azure-storage/azurite azurite-blob --blobHost 0.0.0.0 --blobPort 10000 + - name: Install Azurite + run: | + docker run -d -p 10000:10000 mcr.microsoft.com/azure-storage/azurite azurite-blob --blobHost 0.0.0.0 --blobPort 10000 - # - name: Install Coherence - # run: | - # docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:22.06.5 - # sleep 30 + - name: Install Coherence + run: | + docker run -d -p 1408:1408 -p 30000:30000 ghcr.io/oracle/coherence-ce:22.06.5 + sleep 30 - # - name: Install couchbase - # run: | - # docker run --name couchbase -d -p 8091-8097:8091-8097 -p 9123:9123 -p 11207:11207 -p 11210:11210 -p 11280:11280 -p 18091-18097:18091-18097 couchbase:enterprise-7.1.1 - # sleep 10 - # docker exec --tty couchbase couchbase-cli cluster-init -c localhost:8091 --cluster-username admin --cluster-password 123456 --cluster-ramsize 256 --services data - # sleep 10 - # docker exec --tty couchbase couchbase-cli bucket-create -c localhost:8091 --username admin --password 123456 --bucket fiber_storage --bucket-type couchbase --bucket-ramsize 100 --enable-flush 1 + - name: Install couchbase + run: | + docker run --name couchbase -d -p 8091-8097:8091-8097 -p 9123:9123 -p 11207:11207 -p 11210:11210 -p 11280:11280 -p 18091-18097:18091-18097 couchbase:enterprise-7.1.1 + sleep 10 + docker exec --tty couchbase couchbase-cli cluster-init -c localhost:8091 --cluster-username admin --cluster-password 123456 --cluster-ramsize 256 --services data + sleep 10 + docker exec --tty couchbase couchbase-cli bucket-create -c localhost:8091 --username admin --password 123456 --bucket fiber_storage --bucket-type couchbase --bucket-ramsize 100 --enable-flush 1 - # - name: Install etcd - # run: | - # docker run -d --name Etcd-server \ - # --publish 2379:2379 \ - # --publish 2380:2380 \ - # --env ALLOW_NONE_AUTHENTICATION=yes \ - # --env ETCD_ADVERTISE_CLIENT_URLS=http://etcd-server:2379 \ - # bitnami/etcd:latest + - name: Install etcd + run: | + docker run -d --name Etcd-server \ + --publish 2379:2379 \ + --publish 2380:2380 \ + --env ALLOW_NONE_AUTHENTICATION=yes \ + --env ETCD_ADVERTISE_CLIENT_URLS=http://etcd-server:2379 \ + bitnami/etcd:latest - # - name: Install MinIO - # run: | - # docker run -d --restart always -p 9000:9000 --name storage-minio -e MINIO_ROOT_USER='minio-user' -e MINIO_ROOT_PASSWORD='minio-password' minio/minio server /data + - name: Install MinIO + run: | + docker run -d --restart always -p 9000:9000 --name storage-minio -e MINIO_ROOT_USER='minio-user' -e MINIO_ROOT_PASSWORD='minio-password' minio/minio server /data - # - name: Install ScyllaDb - # run: | - # docker run --name scylladb -p 9042:9042 -p 19042:19042 -p 9160:9160 -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9180:9180 -d scylladb/scylla:latest --broadcast-address 127.0.0.1 --listen-address 0.0.0.0 --broadcast-rpc-address 127.0.0.1 - # sleep 15 # Wait for ScyllaDb to initialize + - name: Install ScyllaDb + run: | + docker run --name scylladb -p 9042:9042 -p 19042:19042 -p 9160:9160 -p 7000:7000 -p 7001:7001 -p 7199:7199 -p 9180:9180 -d scylladb/scylla:latest --broadcast-address 127.0.0.1 --listen-address 0.0.0.0 --broadcast-rpc-address 127.0.0.1 + sleep 15 # Wait for ScyllaDb to initialize - # - name: Setup Redis - # uses: shogo82148/actions-setup-redis@v1 - # with: - # redis-version: '7.x' - # auto-start: 'false' + - name: Setup Redis + uses: shogo82148/actions-setup-redis@v1 + with: + redis-version: '7.x' + auto-start: 'false' - # - name: Run Redis - # run: | - # redis-server --port 6379 & + - name: Run Redis + run: | + redis-server --port 6379 & - name: Run NATS run: | docker run -d --name nats-jetstream -p 4222:4222 nats:latest --jetstream sleep 2 - docker logs nats-jetstream - nc -zv localhost 4222 || true - name: Run Benchmarks run: | set -o pipefail - for d in nats/ ; do + for d in */ ; do [[ $d == "tls/" ]] && continue cd "$d" diff --git a/nats/nats.go b/nats/nats.go index d2bc16eb..8f87dba9 100644 --- a/nats/nats.go +++ b/nats/nats.go @@ -169,7 +169,7 @@ func New(config ...Config) *Storage { } // TODO improve this crude way to wait for the connection to be established - time.Sleep(nats.DefaultReconnectWait) + time.Sleep(100 * time.Millisecond) return storage }