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
2.**Are the workers implemented using goroutines?**
102
101
103
102
Yes, workers are implemented as cooperative goroutines. You can refer the code [here](https://github.com/SarthakMakhija/blast/blob/main/workers/worker.go).
104
103
105
-
3.**I want to send 1001 requests using 100 workers. How many requests will each worker send?**
106
-
107
-
Let's consider two cases.
108
-
109
-
**Case1**: Total requests % workers = 0. Let's consider **200 requests** with **10 workers**. **Each****worker** will send **20 requests**.
110
-
111
-
**Case2**: Total requests % workers != 0. Let's consider **1001 requests** with **100 workers**. **blast** will end up sending **1100 requests**, and **each worker** will send **11 requests**.
112
-
113
-
You can refer the code [here](https://github.com/SarthakMakhija/blast/blob/main/workers/worker_group.go#L52).
114
-
115
-
4.**Can I create more connections than workers?**
104
+
3.**Can I create more connections than workers?**
116
105
117
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`.
118
107
This means, we can have 100 workers with 10 connections, where a group of 10 workers will share one connection.
@@ -156,25 +145,13 @@ byte slice) that [ResponseReader](https://github.com/SarthakMakhija/blast/blob/m
156
145
157
146
8.**What is the significance of Rrd flag in blast?**
158
147
159
-
`Rrd` is the read response deadline flag that defines the deadline for the read calls on connections. This flag helps in understanding the responsiveness of the target server. Let's consider that we are running **blast** with the following command:
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 then timeout if there is no response on the underlying connection.
164
-
165
-
## Screenshots
166
-
167
-
-**Sending load on the target server:**`./blast -n 200000 -c 100 -conn 100 -f ./payload localhost:8989 2> err.log`
168
-
169
-
<imgwidth="715"alt="Sending load on the target server"src="https://github.com/SarthakMakhija/blast/assets/21108320/0eca825c-22e5-4120-9460-cf5eead92c9b">
<imgwidth="715"alt="Reading responses from the target server"src="https://github.com/SarthakMakhija/blast/assets/21108320/d15a1782-b1e6-4200-b697-1083015c3cb3">
148
+
`Rrd` is the read response deadline flag that defines the deadline for the read calls on connections.
149
+
This flag helps in understanding the responsiveness of the target server. Let's consider that we are running **blast** with the following command:
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
154
+
then timeout if there is no response on the underlying connection.
0 commit comments