You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -99,14 +99,14 @@ The following command sends 100 requests per second per worker, over 10 TCP conn
99
99
100
100
2.**Are the workers implemented using goroutines?**
101
101
102
-
Yes, workers are implemented as cooperative goroutines. You can refer the code [here](https://github.com/SarthakMakhija/blast/blob/main/workers/worker.go).
102
+
Yes, workers are implemented as cooperative goroutines. You can refer the code [here](https://github.com/SarthakMakhija/blast-core/blob/main/workers/worker.go).
103
103
104
104
3.**Can I create more connections than workers?**
105
105
106
106
No, you can not create more connections that workers. The relationship between the concurrency and the workers is simple: `concurrency % workers must be equal to zero`.
107
107
This means, we can have 100 workers with 10 connections, where a group of 10 workers will share one connection.
108
108
109
-
You can refer the code [here](https://github.com/SarthakMakhija/blast/blob/main/workers/worker_group.go#L89).
109
+
You can refer the code [here](https://github.com/SarthakMakhija/blast-core/blob/main/workers/worker_group.go#L77).
110
110
111
111
4.**My server takes a protobuf encoded byte slice. How do I pass the payload to blast?**
112
112
@@ -134,14 +134,14 @@ The above code creates a protobuf encoded message and writes it to a file. The f
134
134
135
135
5.**blast provides a feature to read responses. How is response reading implemented?**
136
136
137
-
[ResponseReader](https://github.com/SarthakMakhija/blast/blob/main/report/response_reader.go) implements one goroutine per `net.Conn` to read responses from connections.
137
+
[ResponseReader](https://github.com/SarthakMakhija/blast-core/blob/main/report/response_reader.go) implements one goroutine per `net.Conn` to read responses from connections.
138
138
The goroutine keeps on reading from the connection, and tracks successful and failed reads. This design means that there will be 1M response reader goroutines if the user
139
139
wants to establish 1M connections and read responses. To handle this, IO multiplexing + pool of ResponseReaders is planned in subsequent release.
140
140
141
141
6.**What is the significance of Rrs flag in blast?**
142
142
143
143
To read responses from connections, **blast** needs to know the response payload size. The flag `Rrs` signifies the size of the response payload in bytes (or the size of the
144
-
byte slice) that [ResponseReader](https://github.com/SarthakMakhija/blast/blob/main/report/response_reader.go) should read in each iteration.
144
+
byte slice) that [ResponseReader](https://github.com/SarthakMakhija/blast-core/blob/main/report/response_reader.go) should read in each iteration.
145
145
146
146
7.**What is the significance of Rrd flag in blast?**
147
147
@@ -150,7 +150,7 @@ This flag helps in understanding the responsiveness of the target server. Let's
Here, `Rrd` is 10 milliseconds, this means that the `read` calls in [ResponseReader](https://github.com/SarthakMakhija/blast/blob/main/report/response_reader.go) will block for 10ms and
153
+
Here, `Rrd` is 10 milliseconds, this means that the `read` calls in [ResponseReader](https://github.com/SarthakMakhija/blast-core/blob/main/report/response_reader.go) will block for 10ms and
154
154
then timeout if there is no response on the underlying connection.
0 commit comments