9

Alibaba Yitian 710 NGINX performance - Infrastructure Solutions blog - Arm Commu...

 1 year ago
source link: https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/improve-nginx-performance-up-to-32-by-deploying-on-alibaba-cloud-yitian-710-instances
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Introduction

NGINX is the most popular scale-out web application server. NetCraft ranks it as the leading web server in the world, powering more than 35% of active websites.

In this blog, we demonstrate the performance advantage of Yitian 710 over x86 by comparing NGINX throughput on Alibaba Cloud ECS. We use G8y instances (powered by Yitian 710 processors based on Armv9) and G7 instances (powered by 3rd Generation Intel Xeon Scalable processors) for this comparison.

Benchmark setup and results

For client traffic generation, we used the open source benchmarking application wrk.

For the NGINX server, we deployed NGINX on a single Alibaba Cloud ECS instance with 8 workers configured.

 

NGINX benchmarking topology

Figure 1. NGINX benchmarking topology

The server under test has two ECS instances with the following configurations. The benchmark client used a single G8y.8xlarge instance.

Processor ECS type vCPU
Yitian 710 G8y.2xlarge 8
Intel Ice Lake G7.2xlarge 8

Table 1. Test server configurations

The benchmark tests were performed with the following software versions and test parameters.

Component name Version
NGINX 1.20.1
GCC version 10.2.1 20200825 (Alibaba 10.2.1-3 2.32)
Wrk 4.0.2
Operating system Alibaba Cloud Linux 3.2104 LTS
Test config parameter Value
Number of threads 32
Number of connections 1000

The wrk client creates 32 threads with total 1000 connections. To improve performance, we enable XPS (transmit packet steering) on both G8y and G7 instances. We also bind 8 transmit queues to 8 cores separately. We observe up to 32% increased performance running NGINX on Yitian 710 based instances compared to equivalent x86-based instances. The results shown in the following tables are an aggregated result of 20 consecutive test runs. 

Let us look at the performance numbers of NGINX on G8y and G7 instances. We compare the throughput (operations/sec) values after multiple test runs. 

Test type G7.2x (Requests/sec) G8y.2x (Requests/sec) Performance gain (%)
HTTP persistent connection 1111578.43 1333061.01 20%
HTTPS persistent connection 623165.01 820439.24 32%

Table 2. NGINX throughput performance results on G8y vs. G7

Performance gain for G8y vs. G7 instances

Figure 2. Performance gains for G8y vs. G7 instances

Conclusion

NGINX deployed on Yitian 710 based ECS provides up to 32% more throughput in compared to the equivalent x86 based ECS instances. In addition, according to Alibaba, the G8y instance based on Yitian 710 is priced 20% less than the G7 instance.

Please visit this page for details on how to migrate existing applications to Alibaba Cloud Yitian710 instances. For any queries related to your software workloads running on Arm platforms, feel free to reach out to us at [email protected].

More Cloud Workloads on Arm


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK