Create Benchmark Script NBIO vs gRPC
Budget: $10 – $30 USD
The benchmark use case:
1. connect, send 1KB, 10KB, 100KB payload, return+verify the same payload, disconnect
2. connect, send 1KB payload multiple times (10, 100, 1000)x, return+verify the same payload, disconnect
For 3 kind of serialization for nbio:
1. default protobuf
2. json https://github.com/goccy/go-json
3. json5 https://github.com/yosuke-furukawa/json5
measure the :
1. cpu utilization for client and server
2. rps
3. peak memory usage
4. either total benchmark duration if benchmark is count-based or total requests and errors if benchmark is duration-based
The library to be benchmarked:
1. https://github.com/lesismal/nbio (see the example on nbio-examples repository)
2. http://google.golang.org/grpc
3. https://github.com/nats-io/nats.go
commit the result on https://github.com/kokizzu/hugedbbench 2022rpc directory
To bid/send proposal, you must include exact price and how many combinations are there to be benchmarked and what programming language to be used and what's the latest version of that programming language.
I will automatically reject wrong answer.
1. connect, send 1KB, 10KB, 100KB payload, return+verify the same payload, disconnect
2. connect, send 1KB payload multiple times (10, 100, 1000)x, return+verify the same payload, disconnect
For 3 kind of serialization for nbio:
1. default protobuf
2. json https://github.com/goccy/go-json
3. json5 https://github.com/yosuke-furukawa/json5
measure the :
1. cpu utilization for client and server
2. rps
3. peak memory usage
4. either total benchmark duration if benchmark is count-based or total requests and errors if benchmark is duration-based
The library to be benchmarked:
1. https://github.com/lesismal/nbio (see the example on nbio-examples repository)
2. http://google.golang.org/grpc
3. https://github.com/nats-io/nats.go
commit the result on https://github.com/kokizzu/hugedbbench 2022rpc directory
To bid/send proposal, you must include exact price and how many combinations are there to be benchmarked and what programming language to be used and what's the latest version of that programming language.
I will automatically reject wrong answer.