@@ -17,23 +17,37 @@ def run_app():
1717 logger .info (f"Concurrency: { app_settings .CONCURRENCY } " )
1818 logger .info (f"Timeout: { app_settings .TIMEOUT } seconds" )
1919 logger .info (f"Request Delay: { app_settings .REQUEST_DELAY } seconds" )
20+ logger .info (f"SSL Verify: { app_settings .VERIFY_SSL } " )
21+
22+ session = requests .Session ()
23+
2024 logger .info ("Starting HTTP benchmark..." )
2125
2226 for i in range (app_settings .NUM_REQUESTS ):
2327 start_time = time .time ()
28+
2429 try :
25- response = requests .get (
26- str (app_settings .TARGET_URL ), timeout = app_settings .TIMEOUT
30+ response = session .get (
31+ str (app_settings .TARGET_URL ),
32+ timeout = app_settings .TIMEOUT ,
33+ verify = app_settings .VERIFY_SSL ,
2734 )
2835 response .raise_for_status ()
36+
2937 elapsed_time_ms = (time .time () - start_time ) * 1000
3038 logger .info (
3139 f"Request { i + 1 } : { response .status_code } - { elapsed_time_ms :.2f} ms"
3240 )
41+
42+ except requests .exceptions .SSLError as e :
43+ logger .error (f"Request { i + 1 } SSL error: { e } " )
44+
3345 except requests .RequestException as e :
3446 logger .error (f"Request { i + 1 } failed: { e } " )
47+
3548 finally :
36- time .sleep (app_settings .REQUEST_DELAY )
49+ if app_settings .REQUEST_DELAY > 0 :
50+ time .sleep (app_settings .REQUEST_DELAY )
3751
3852
3953if __name__ == "__main__" :
0 commit comments