# Nginx ssl performance

**URL:** <https://www.ruby-forum.com/t/nginx-ssl-performance/244195>\
**Category:** NGINX\
**Created:** [March 3, 2016, 4:55pm UTC](https://www.ruby-forum.com/t/nginx-ssl-performance/244195 "2016-03-03T16:55:56Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sadaf\_N](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/858c86/32.png) [@Sadaf\_N](https://www.ruby-forum.com/u/Sadaf_N)\
**Post date:** [March 3, 2016, 4:55pm UTC](https://www.ruby-forum.com/t/nginx-ssl-performance/244195/1 "2016-03-03T16:55:56Z")

</div>

Hi,

I want to test the nginx server performance with different server  
configuration (CPU and RAM etc)

I first use apache ab as testing tool, nginx server with 2 CPU and 4G  
RAM,  
http test could handle 7000 requests/s, cpu usage reach to 30%-40%. But  
https’ performace drop dramatically to only 300-400 requests/s and cpu  
usage  
reach to 100%.

Then I also use jemeter and wrk to test, find https’ performance is not  
so  
much less than http, it’s only a little than http. For example use wrk  
test  
http, can reach to 5300 requests/s, while https could reach to 5100  
requests/s and CPU almost same, will not reach to 100%.

So I’m confused, is that because the test tool ab’s problem, if it’s  
ab’s  
problem, why it’s http performance is good?  
If ab’s test result is correct, is https’ performance is so bad than  
http?

Posted at Nginx Forum:

> **[nginx ssl performance](https://forum.nginx.org/read.php?2,265046,265046#msg-265046)**
>
> Hi, I want to test the nginx server performance with different server configuration (CPU and RAM etc) I first use apache ab as testing tool, nginx server with 2 CPU and 4G RAM, http test could handle 7000 requests/s, cpu usage reach to 30%-40%. But...

---

<div class="post-metadata">

**Author:** ![huakaibird](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/h/ecccb3/32.png) [@huakaibird](https://www.ruby-forum.com/u/huakaibird)\
**Post date:** [March 3, 2016, 5:02pm UTC](https://www.ruby-forum.com/t/nginx-ssl-performance/244195/2 "2016-03-03T17:02:57Z")

</div>

ApacheBench doesn’t do TLS resumption, so you’re forcing a new TLS  
handshake with each request. This will kill your performance. ab is a  
pretty weak tool 😉

On Thu, Mar 3, 2016 at 7:55 AM, huakaibird [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)
