---
title: KAE对Nginx处理HTTPS连接请求的性能调优
description: "通过配置OpenSSL和Nginx以使用KAE，并比较使能和未使能KAE时Nginx处理HTTPS连接请求的性能提升效果。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengwebs/ecosystemEnable/Nginx/kunpengnginx_05_0024.html
sourcePath: /source/zh/kunpengwebs/ecosystemEnable/Nginx/kunpengnginx_05_0024.html
indexId: b500261f6440e559e5bfc863ec23fd45fc870ed7564367a471a1c3597f2a448d70
---
# KAE对Nginx处理HTTPS连接请求的性能调优

通过配置OpenSSL和Nginx以使用KAE，并比较使能和未使能KAE时Nginx处理HTTPS连接请求的性能提升效果。

1. 创建并配置OpenSSL配置文件，使Nginx可以使用KAE。

  a. 创建文件openssl.cnf。
    1 vi openssl.cnf

  b. 按“i”进入编辑模式，在配置文件openssl.cnf添加以下内容后，将openssl.cnf放在“/home”目录下。

```
openssl_conf=openssl_def
[openssl_def]
engines=engine_section
[engine_section]
kae=kae_section
[kae_section]
engine_id=kae
dynamic_path=/usr/local/lib/engines-1.1/kae.so
default_algorithms=ALL
init=1
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
  d. 使能KAE。
    1 export OPENSSL_CONF=/home/openssl.cnf

2. 修改Nginx配置文件，为Nginx性能测试作准备，以比较开启和未开启KAE时Nginx处理HTTPS连接请求的性能。

  a. 打开“/usr/local/nginx/conf/nginx.conf”文件。
    1 vi /usr/local/nginx/conf/nginx.conf

  b. 按“i”进入编辑模式，将文件中的ssl_ciphers改成AES256-GCM-SHA384，即改为使用RSA算法套件。
    1 ssl_ciphers AES256-GCM-SHA384;

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
3. 不使能KAE，启动Nginx服务，进行压力测试。

  a. 在服务端上执行以下操作：

    1. 取消KAE环境变量，默认使用软算能力。
      1 unset OPENSSL_CONF

    2. 启动Nginx服务。
      1 taskset -c 16-25 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

    3. 监管VF队列消耗情况。
      不额外创建虚拟机化设备时，VF队列默认为256。当未使用到KAE，VF队列不会被消耗，也就是默认的256。 1 watch -n 0.2 cat /sys/class/uacce/hisi_*/available_instances

  b. 在客户端上执行以下操作：
    使用HTTPress工具对服务器进行压力测试。 1 httpress -n 500000 -c 100 -t 100 https://IP:port/index.html 命令参数说明如下： -n：请求数。 -t：线程数。 -c：并发数。 IP：被测服务器的IP地址。 port：被测服务器的端口号。

    使能KAE前的性能测试结果：服务器每秒完成5330次请求。

4. 使能KAE，启动Nginx服务，进行压力测试。

  a. 在服务端上执行以下操作：

    1. 设置KAE环境变量，默认使用KAE硬算能力。
      1 export OPENSSL_CONF=/home/openssl.cnf

    2. 启动Nginx服务。
      1 taskset -c 16-25 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

    3. 监管VF队列消耗情况。不额外创建虚拟机化设备时，VF队列默认为256。当使用到KAE，VF队列会被消耗，也就是小于256。
      1 watch -n 0.2 cat /sys/class/uacce/hisi_*/available_instances

  b. 在客户端上执行以下操作：
    使用HTTPress工具对服务器进行压力测试。 1 httpress -n 500000 -c 100 -t 100 https://IP:port/index.html

    命令参数说明如下： -n：请求数。 -t：线程数。 -c：并发数。 IP：被测服务器的IP地址。 port：被测服务器的端口号。

    使能KAE后的性能测试结果：服务器每秒完成10700次请求。

    结合3和4的性能测试结果可以看到，使能KAE前后的性能值分别是5330、10700，性能约提升100%。
