---
title: KAE对Docker容器内Nginx的性能调优
description: "在Docker容器内启动Nginx服务，并对比不使能和使能KAE时的性能测试结果。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengwebs/ecosystemEnable/Nginx/kunpengnginx_05_0028.html
sourcePath: /source/zh/kunpengwebs/ecosystemEnable/Nginx/kunpengnginx_05_0028.html
indexId: abb70f0ce8e5edb9e1c4fdc1780fccef37e66c34f820b9c4148ed0a97b66972670
---
# KAE对Docker容器内Nginx的性能调优

在Docker容器内启动Nginx服务，并对比不使能和使能KAE时的性能测试结果。

1. 修改Nginx配置文件，在容器内启动Nginx服务，为验证KAE对加解密性能的提升比例做准备。

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

  b. 按“i”进入编辑模式，在文件中修改Nginx服务进程为4。当前Docker只绑定了4个core，那么Nginx服务进程也应为4。
    1 2 3 4 5 6 7 8 user root; worker_processes 4; worker_cpu_affinity 100000000000000000000 1000000000000000000000 10000000000000000000000 100000000000000000000000 ;

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

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

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

    2. 启动Nginx服务，无需额外指定core，因为由      3
可知，Docker已绑定20-23号core。
      1 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

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

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

    性能测试结果：服务器每秒完成2243次请求。

3. 在Docker容器内，使能KAE，启动Nginx服务，进行压力测试。

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

    1. 取消KAE环境变量，默认使用软算能力。
      1 export OPENSSL_CONF=/home/openssl.cnf

    2. 启动Nginx服务，由      3
可知，该Docker已指定core为20-23，故无需用taskset -c指定core，进程数为4，core数也为4。
      1 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

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

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

    性能测试结果：服务器每秒完成4368次请求。

    结合2和3的性能测试结果可以看到，使能KAE前后的性能值分别是2243、4368，性能约提升94%。
