Skip to content

Commit 1ec59d2

Browse files
committed
Code for step 3
1 parent 9efadef commit 1ec59d2

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

Diff for: load_test.exs

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
base_url = "http://localhost:4000/api/used_cars"
2+
wait_time_per_query_ms = 100
3+
total_requests = 100
4+
5+
:ok = :inets.start()
6+
7+
Enum.each(1..total_requests, fn count ->
8+
random_num = :rand.uniform(10)
9+
10+
url =
11+
cond do
12+
random_num <= 5 ->
13+
"#{base_url}?make=ferrari"
14+
15+
random_num <= 7 ->
16+
"#{base_url}?model=F8"
17+
18+
random_num == 8 ->
19+
"#{base_url}?min_year=1990"
20+
21+
random_num == 9 ->
22+
"#{base_url}?max_price=200000"
23+
24+
true ->
25+
"#{base_url}?max_mileage=50000"
26+
end
27+
28+
:httpc.request(:get, {String.to_charlist(url), []}, [], [])
29+
30+
if rem(count, 10) == 0, do: IO.puts("Completed #{count} requests")
31+
32+
:timer.sleep(wait_time_per_query_ms)
33+
end)

0 commit comments

Comments
 (0)