提升Web应用性能比以往任何时候都更加重要。线上经济活动的占比正在增长;目前,发达国家/地区超过5%的经济活动已转移到互联网上(请参阅下方的“互联网统计资源”)。在这个始终在线、高度互联的现代世界,用户的期望也比以往更高。如果网站无法即时响应,或应用无法流畅运行,用户很快就会转向竞争对手。
例如,Amazon近10年前开展的一项研究证明,即使在当时,页面加载时间缩短100毫秒也能使其收入增加1%。近期的另一项研究指出,超过半数的受访网站所有者表示,他们曾因应用性能不佳而损失收入或客户。
网站需要多快?页面加载时间每增加1秒,约有4%的用户会放弃访问。领先的电商网站首次可交互时间为1至3秒,这一范围可带来较高的转化率。显然,Web应用性能至关重要,而且其重要性可能还会继续提升。
想要提升性能并不难,但真正取得成效却并非易事。为帮助您实现这一目标,本篇博文提供了10条建议,可帮助您将网站性能提升至多10倍。本文是该系列的第一篇,将详细介绍如何借助一些经过充分验证的优化技术和NGINX的支持来提升应用性能。本系列还将概述在此过程中可能实现的安全性改进。
技巧1:使用反向代理服务器加速并保护应用
如果Web应用在单台计算机上运行,性能问题的解决方案似乎显而易见:只需换用一台速度更快、处理器性能更强、RAM更大、磁盘阵列更快的计算机,等等。这样,新计算机就能比以前更快地运行WordPress服务器、Node.js应用、Java应用等。(如果应用需要访问数据库服务器,解决方案可能看起来仍然很简单:换用两台速度更快的计算机,并提高两者之间的连接速度。)
问题在于,机器速度可能并非症结所在。Web应用程序运行缓慢,通常是因为计算机需要在不同类型的任务之间切换,例如通过数千个连接与用户交互、从磁盘访问文件以及运行应用程序代码等。应用服务器可能会出现颠簸:内存耗尽,不断将内存块换出到磁盘,并导致大量请求等待磁盘I/O等单项任务完成。
无需升级硬件,也可以采用一种完全不同的方法:添加反向代理服务器来分担其中一些任务。反向代理服务器部署在运行应用的计算机前端,负责处理互联网流量。只有反向代理服务器直接连接到互联网;它与应用服务器之间通过高速内部网络通信。
使用反向代理服务器后,应用服务器无需等待用户与Web应用交互,可以专注于生成页面,再由反向代理服务器通过互联网发送。由于不再需要等待客户端响应,应用服务器的运行速度可以接近优化基准测试中达到的水平。
添加反向代理服务器还可以提高Web服务器配置的灵活性。例如,如果某一类型的服务器过载,可以轻松添加另一台同类型服务器;如果某台服务器停机,也可以轻松将其替换。
反向代理服务器具有灵活性,也是实现许多其他性能提升功能的前提,例如:
- 负载均衡(请参阅技巧 2),负载均衡器在反向代理服务器上运行,将流量均匀分配到多台应用服务器。部署负载均衡器后,无需对应用进行任何更改,即可添加应用服务器。
- 缓存静态文件(请参阅技巧 3):直接请求的文件(例如图像文件或代码文件)可以存储在反向代理服务器上,并直接发送到客户端,从而更快地提供资源并减轻应用服务器的负载,使应用运行得更快。
- 保护网站安全:可对反向代理服务器进行高安全性配置和监控,以便快速识别和响应攻击,从而保护应用服务器。
NGINX软件专为用作反向代理服务器而设计,并具备上述附加功能。NGINX采用事件驱动的处理方式,比传统服务器更高效。NGINX Plus还提供更高级的反向代理功能,例如应用运行状况检查、专用请求路由、高级缓存和支持服务。

技巧 2:添加负载均衡器
添加负载均衡器是一项相对简单的改动,却能显著提升网站的性能和安全性。无需扩容或增强核心Web服务器,只需使用负载均衡器将流量分配到多台服务器。即使应用编写质量不佳或存在扩展问题,负载均衡器也能在无需进行其他改动的情况下改善用户体验。
首先,负载均衡器是一种反向代理服务器(请参阅技巧 1),它接收互联网流量,并将请求转发到另一台服务器。负载均衡器的关键在于,它支持两台或更多应用服务器,并使用多种可选算法在服务器之间分配请求。最简单的负载均衡方法是轮询,即将每个新请求依次发送到列表中的下一台服务器。其他方法包括将请求发送到活动连接数最少的服务器。NGINX Plus具备相应功能,可让特定用户会话持续使用同一台服务器,这称为会话持久性。
负载均衡器可以显著提升性能,因为它们能够避免一台服务器过载而其他服务器却在等待流量。负载均衡器还可以简化Web服务器容量扩展:只需添加成本相对较低的服务器,即可确保其得到充分利用。
可进行负载均衡的协议包括HTTP、HTTPS、SPDY、HTTP/2、WebSocket、FastCGI、SCGI、uwsgi、memcached,以及其他多种应用类型,包括基于TCP的应用和其他第4层协议。请分析Web应用,确定使用了哪些协议以及哪些环节存在性能瓶颈。
用于负载均衡的同一台或多台服务器还可以处理其他多项任务,例如SSL终止、支持客户端使用HTTP/1.x和HTTP/2,以及缓存静态文件。
NGINX常用于负载均衡。如需了解详情,请下载我们的电子书《选择软件负载均衡器的五个理由》。如需基本配置说明,请参阅《使用NGINX和NGINX Plus实现负载均衡,第1部分》;如需完整文档,请参阅《NGINX Plus管理指南》。NGINX Plus是我们的商业产品,支持更专业的负载均衡功能,例如根据服务器响应时间进行负载路由,以及基于Microsoft NTLM协议实现负载均衡。
技巧3:缓存静态和动态内容
缓存通过更快地向客户端交付内容来提升Web应用性能。缓存可采用多种策略:预处理内容,以便在需要时快速交付;将内容存储在速度更快的设备上;将内容存储在更靠近客户端的位置;或结合使用这些策略。
需要考虑两种不同类型的缓存:
- 静态内容缓存:不经常更改的文件(例如图像文件(JPEG、PNG)和代码文件(CSS、JavaScript))可以存储在边缘服务器上,以便从内存或磁盘中快速检索。
- 动态内容缓存,许多Web应用会为每个页面请求生成新的HTML。将生成的HTML副本短暂缓存一段时间,可以大幅减少需要生成的页面总数,同时确保所交付内容的时效性满足要求。
例如,如果某个页面每秒获得10次浏览,并将其缓存1秒,则该页面90%的请求将由缓存提供。如果单独缓存静态内容,即使是新生成的页面版本,也可能主要由缓存内容组成。
缓存Web应用生成的内容主要有三种技术:
- 将内容移至更靠近用户的位置,在更靠近用户的位置保留内容副本,可缩短传输时间。
- 将内容移至速度更快的计算机,可将内容保存在速度更快的计算机上,以便更快地检索。
- 将内容从负载过高的计算机上移出,计算机有时会因忙于处理其他任务,在执行特定任务时远低于基准性能。将内容缓存在另一台计算机上,可以减轻主机的负载,从而提升已缓存资源和未缓存资源的性能。
Web应用缓存可以从内部(即Web应用服务器)逐步向外实施。首先,对动态内容使用缓存,以减轻应用服务器的负载。然后,对静态内容使用缓存(包括原本属于动态内容的临时副本),进一步减轻应用服务器的负载。之后,将缓存从应用服务器迁移到速度更快和/或距离用户更近的计算机上,从而减轻应用服务器的负担,并缩短检索和传输时间。
改进缓存机制可以显著提升应用速度。许多网页中,静态数据(如大型图像文件)占据了一半以上的内容。如果不使用缓存,检索和传输此类数据可能需要数秒;如果将数据缓存在本地,则可能只需零点几秒。
以实际应用缓存为例,NGINX和NGINX Plus使用两个指令来设置缓存:proxy_cache_path和proxy_cache。您可以指定缓存的位置和大小、文件在缓存中的最长保留时间以及其他参数。使用第三个也很常用的指令proxy_cache_use_stale,还可以让缓存服务器在提供新内容的服务器繁忙或停机时返回过期内容,避免客户端无法获取任何内容。从用户角度来看,这可能会显著提高网站或应用的正常运行时间。
NGINX Plus具有高级缓存功能,包括支持缓存清除,并可在仪表板上直观显示缓存状态,以便实时监控活动。
有关使用NGINX进行缓存的更多信息,请参阅参考文档和《NGINX Plus管理指南》。
注意:缓存涉及多个组织职能,包括应用开发人员、资本投资决策人员以及实时网络运维人员。本文提及的复杂缓存策略充分体现了DevOps视角的价值。该视角融合应用开发、架构和运维方面的考量,有助于实现网站功能、响应时间、安全性和业务成果等目标,例如促成交易或销售。
技巧4:压缩数据
压缩技术有望大幅提升性能。针对照片(JPEG和PNG)、视频(MPEG‑4)和音乐(MP3)等内容,已有经过精心设计且非常有效的压缩标准。每种标准都能将文件大小缩减至原来的十分之一或更小。
文本数据(包括由纯文本和HTML标签组成的HTML、CSS以及JavaScript等代码)通常未经压缩便进行传输。压缩这些数据可以显著改善用户感知到的Web应用性能,尤其适用于移动连接速度较慢或带宽受限的客户端。
这是因为,文本数据通常足以支持用户与页面交互,而多媒体数据更多用于辅助或装饰。智能内容压缩可以降低HTML、Javascript、CSS及其他文本内容的带宽需求,通常可降低30%或更多,同时缩短加载时间。
如果使用SSL,压缩可减少需要进行SSL编码的数据量,从而抵消压缩数据所占用的部分CPU时间。
文本数据的压缩方法多种多样。例如,请参阅技巧 6,了解SPDY和HTTP/2中专门针对标头数据调整的新型文本压缩方案。另一个文本压缩示例是,可以在NGINX中启用GZIP压缩。在服务上预压缩文本数据后,可以使用 .gz压缩文件,并通过gzip_static指令直接提供该文件。
技巧 5:优化 SSL/TLS
安全套接字层(SSL)协议及其后继协议传输层安全性(TLS)协议正被越来越多的网站采用。SSL/TLS会对从源服务器传输到用户的数据进行加密,有助于提升网站安全性。推动这一趋势的部分原因可能是,Google目前将是否采用SSL/TLS作为影响搜索引擎排名的正面因素。
尽管SSL/TLS日益普及,但其造成的性能损失仍是许多网站面临的一大难题。SSL/TLS会因以下两个原因降低网站性能:
- 每次建立新连接时,都需要通过初始握手来建立加密密钥。使用HTTP/1.x的浏览器会与每台服务器建立多个连接,从而进一步加剧这种性能影响。
- 服务器端加密数据和客户端解密数据所产生的持续开销。
为促进SSL/TLS的使用,HTTP/2和SPDY(将在下一条提示中介绍)的设计者对这些协议进行了相应设计,使浏览器在每个会话中只需建立一个连接。这大幅减少了SSL开销的两大主要来源之一。不过,目前还可以采取更多措施,提升通过SSL/TLS交付的应用性能。
SSL/TLS优化机制因Web服务器而异。例如,NGINX使用OpenSSL,在标准通用硬件上运行时,可提供与专用硬件解决方案相近的性能。NGINX的SSL 性能已有详尽记录,并可尽量减少SSL/TLS加密和解密所带来的时间和CPU开销。
此外,请参阅这篇博客文章,详细了解提升SSL/TLS性能的方法。简而言之,这些技术包括:
- 会话缓存:使用
ssl_session_cache指令缓存通过SSL/TLS保护每个新连接时所用的参数。 - 会话票证或ID:将特定SSL/TLS会话的信息存储在票证或ID中,以便顺畅地复用连接,无需重新握手。
- OCSP装订,通过缓存SSL/TLS证书信息来缩短握手时间。
NGINX和NGINX Plus可用于SSL/TLS终止,即处理客户端流量的加密和解密,同时以明文方式与其他服务器通信。要将NGINX或NGINX Plus设置为处理SSL/TLS终止,请参阅有关HTTPS连接和加密TCP连接的说明。
技巧 6:实施 HTTP/2 或 SPDY
对于已使用SSL/TLS的网站,HTTP/2和SPDY很可能会提升性能,因为单一连接只需进行一次握手。对于尚未使用SSL/TLS的网站,虽然迁移到SSL/TLS通常会降低性能,但采用HTTP/2和SPDY后,从响应速度来看,性能基本不会受到影响。
Google于2012年推出SPDY,旨在提升HTTP/1.x的性能。HTTP/2是近期获批的基于SPDY的IETF标准。SPDY已得到广泛支持,但即将弃用,并由HTTP/2取代。
SPDY和HTTP/2的主要特点是使用单一连接,而不是多个连接。该连接采用多路复用,因此可以同时传输多个请求和响应的部分数据。
这些协议充分利用单个连接,避免了浏览器实现HTTP/1.x时因建立和管理多个连接而产生的开销。使用单个连接对SSL尤其有帮助,因为它可以尽量减少SSL/TLS建立安全连接所需的耗时握手过程。
SPDY协议要求使用SSL/TLS;HTTP/2并未正式要求使用SSL/TLS,但迄今为止,所有支持HTTP/2的浏览器都只会在启用SSL/TLS时使用HTTP/2。也就是说,支持HTTP/2的浏览器仅在网站使用SSL且其服务器接受HTTP/2流量时才会使用HTTP/2。否则,浏览器将通过HTTP/1.x。
实施SPDY或HTTP/2后,便不再需要域名分片、资源合并和图像拼合等常见的HTTP性能优化。这些变化可简化代码和部署,使其更易于管理。如需进一步了解HTTP/2带来的变化,请阅读我们的白皮书《面向Web应用开发人员的HTTP/2》。
以对这些协议的支持为例,NGINX很早就开始支持SPDY,目前使用SPDY的大多数网站都在NGINX上运行。NGINX还在率先推进对HTTP/2的支持;截至2015年9月,NGINX开源版和NGINX Plus均已支持HTTP/2。
随着时间的推移,NGINX预计大多数网站将全面启用SSL并迁移到HTTP/2。这将提升安全性;随着新的优化方法不断涌现并得到实施,代码也将更加简洁,性能更出色。
技巧 7:更新软件版本
提升应用性能的一种简单方法是,根据组件在稳定性和性能方面的口碑,为软件栈选择合适的组件。此外,高质量组件的开发者通常会持续改进性能并修复错误,因此使用软件的最新稳定版本会带来益处。新版本会得到开发者和用户社区更多的关注。较新的构建版本还可利用新的编译器优化,包括针对新硬件的调优。
稳定的新版本通常比旧版本具有更好的兼容性和更高的性能。及时更新软件,也有助于持续掌握调优改进、错误修复和安全警报。
继续使用旧版软件还可能导致无法利用新功能。例如,上述HTTP/2目前需要OpenSSL 1.0.1。从2016年年中开始,HTTP/2将需要使用OpenSSL 1.0.2,该版本于2015年1月发布。
NGINX用户可以先升级到最新版本的NGINX或NGINX Plus;这些版本提供套接字分片和线程池等新功能(请参阅技巧 9),并且两者都在持续进行性能调优。然后检查技术栈中更底层的软件,并尽可能升级到最新版本。
技巧 8:调优 Linux 以提升性能
如今,大多数Web服务器都基于Linux操作系统。作为基础设施的底层基础,Linux蕴含着显著的性能提升空间。默认情况下,许多Linux系统采用保守的调优设置,以减少资源使用并适应典型的桌面工作负载。因此,对于Web应用场景,至少需要进行一定程度的调优,才能充分提升性能。
Linux优化因Web服务器而异。以NGINX为例,以下是一些可考虑用于提升Linux性能的重点调整:
- 积压队列:如果连接似乎停滞,可考虑增大
net.core.somaxconn。该参数指定可排队等待NGINX处理的最大连接数。如果现有连接数限制过小,系统会显示错误消息。可逐步增大此参数,直至错误消息不再出现。 - 文件描述符:NGINX为每个连接使用的文件描述符最多可达两个。如果系统正在处理大量连接,可能需要提高
sys.fs.file_max(系统级文件描述符上限)和nofile(用户文件描述符上限),以支持增加的负载。 - 临时端口:用作代理时,NGINX会为每个上游服务器创建临时(“短暂”)端口。可以扩大由
net.ipv4.ip_local_port_range设置的端口值范围,以增加可用端口数量。还可以通过net.ipv4.tcp_fin_timeout设置缩短非活动端口被重新使用前的超时时间,从而加快端口周转。
如需了解NGINX,请参阅《NGINX性能调优指南》,了解如何优化Linux系统,使其能够轻松应对大量网络流量!
技巧 9:调优 Web 服务器性能
无论使用哪种Web服务器,都需要对其进行调优,以提升Web应用性能。以下建议通常适用于任何Web服务器,但其中提供的具体设置针对NGINX。主要优化措施包括:
- 访问日志:无需立即将每个请求的日志条目写入磁盘,可以先将条目缓存在内存中,再批量写入磁盘。对于NGINX,请在
buffer=size参数中添加到access_log指令,以便在内存缓冲区已满时将日志条目写入磁盘。如果添加flush=time参数,缓冲区内容也会在指定时间后写入磁盘。 - 缓冲:缓冲会将部分响应保存在内存中,直至缓冲区填满,从而提高与客户端的通信效率。无法存入内存的响应会写入磁盘,这可能会降低性能。当NGINX缓冲处于on状态时,可使用
proxy_buffer_size和proxy_buffers指令进行管理。 - 客户端长连接:长连接可减少开销,尤其是在使用SSL/TLS时。对于NGINX,可以将客户端通过给定连接发出的最大请求数从默认值100调高,该值由
keepalive_requests控制;还可以增大keepalive_timeout,让长连接保持更长时间,从而加快后续请求。 - 上游长连接:上游连接(即与应用服务器、数据库服务器等建立的连接)也可受益于长连接。对于上游连接,可以增加
keepalive,即每个工作进程保持打开状态的空闲长连接数。这样可以提高连接复用率,减少建立全新连接的需要。有关更多信息,请参阅我们的博客文章《HTTP 长连接与 Web 性能》。 - 限制:限制客户端使用的资源有助于提升性能和安全性。对于NGINX,
limit_conn和limit_conn_zone指令用于限制来自指定源的连接数,而limit_rate用于限制带宽。这些设置可以防止合法用户过度占用资源,也有助于防范攻击。limit_req和limit_req_zone指令用于限制客户端请求。对于与上游服务器的连接,请在upstream配置块中使用server指令的max_conns参数。这样可以限制与上游服务器的连接数,避免服务器过载。关联的queue指令会创建一个队列,在达到max_conns限制后,将指定数量的请求保留指定时长。 - 工作进程:工作进程负责处理请求。NGINX采用基于事件的模型和依赖于操作系统的机制,在工作进程之间高效分配请求。建议将
worker_processes的值设置为每个CPU对应一个工作进程。大多数系统可根据需要安全地提高worker_connections的最大值(默认为512);请通过测试确定最适合您系统的值。 - 套接字分片:通常,单个套接字侦听器会将新连接分配给所有工作进程。套接字分片会为每个工作进程创建一个套接字侦听器,由内核在套接字侦听器可用时为其分配连接。这有助于减少锁争用,并提升多核系统的性能。要启用套接字分片,请在
reuseport参数中添加listen指令。 - 线程池:任何计算机进程都可能因单个缓慢操作而受阻。对于Web服务器软件,磁盘访问可能会阻塞许多速度更快的操作,例如计算或复制内存中的信息。使用线程池时,缓慢操作会分配给一组单独的任务,而主处理循环会继续运行速度更快的操作。磁盘操作完成后,结果会返回主处理循环。在NGINX中,有两项操作会卸载到线程池,即
read()系统调用和sendfile()。thread pools.

提示。更改任何操作系统或支持服务的设置时,每次只更改一项设置,然后测试性能。如果更改后出现问题,或网站运行速度没有提升,请恢复原设置。
有关调优NGINX Web服务器的更多信息,请参阅我们的博客文章《NGINX性能调优》。
技巧10:监控实时活动,解决问题和瓶颈
实现高性能应用开发和交付的关键,在于密切、实时地监控应用在实际环境中的性能。必须能够监控特定设备内部以及整个Web基础设施中的活动。
监控站点活动大多是被动的,只会告知当前情况,仍需由您发现并解决问题。
监控可以发现多种不同类型的问题,包括:
- 服务器已停机。
- 一台服务器运行不稳定,连接不断中断。
- 服务器的缓存未命中率较高。
- 服务器未发送正确的内容。
New Relic或Dynatrace等全球应用性能监控工具可帮助您监控不同远程位置的页面加载时间,而NGINX则可帮助您监控应用交付环节。应用性能数据可以反映优化何时真正改善了用户体验,以及何时需要考虑扩充基础设施容量以承载当前流量。
为帮助快速发现并解决问题,NGINX Plus新增了应用感知型健康检查,即定期重复执行的合成事务,用于在出现问题时发出警报。NGINX Plus还提供会话排空功能,可在现有任务完成期间停止建立新连接;同时还提供慢启动功能,使恢复运行的服务器能够在负载均衡组中逐步达到正常处理能力。有效使用健康检查,可以在问题严重影响用户体验之前将其发现;会话排空和慢启动则可帮助替换服务器,并确保该过程不会对用户感知的性能或正常运行时间产生负面影响。图中显示了NGINX Plus内置的实时活动监控仪表板,其中展示了Web基础设施中的服务器、TCP连接和缓存。
结论:性能提升至10倍
不同Web应用可实现的性能提升幅度差异很大,实际提升取决于预算、可投入的时间以及现有实施中的不足。那么,如何才能让自己的应用性能提升至10倍?
为帮助您了解各项优化可能带来的影响,下面列出了上述每条建议可能实现的性能提升,但实际效果几乎肯定会有所不同:
- 反向代理服务器和负载均衡:未采用负载均衡或负载均衡不佳,可能导致性能在某些时段大幅下降。添加NGINX等反向代理服务器,可以防止Web应用在内存与磁盘之间频繁交换数据。负载均衡可以将处理任务从负载过重的服务器转移到有可用容量的服务器,并简化扩展。这些更改可以显著提升性能。与当前实施方案性能最差时相比,性能可轻松提升至10倍;整体性能的提升幅度虽相对较小,但仍然可观。
- 缓存动态和静态内容:如果Web服务器同时充当应用服务器且负载过重,仅缓存动态内容即可使高峰时段的性能提升至原来的10倍。缓存静态文件也可使性能提升数倍。
- 压缩数据,使用媒体文件压缩格式,例如照片采用JPEG、图形采用PNG、影片采用MPEG‑4、音乐文件采用MP3,可以显著提升性能。采用这些格式后,再压缩文本数据(代码和HTML),可将页面初始加载速度提升至原来的2倍。
- 优化SSL/TLS:安全握手可能会对性能产生显著影响,因此对其进行优化或许能使初始响应速度提升至2倍,尤其是对于文本内容较多的网站。优化SSL/TLS下的媒体文件传输可能只会带来小幅性能提升。
- 实施HTTP/2和SPDY:与SSL/TLS结合使用时,这些协议可能会逐步提升网站的整体性能。
- 调优Linux和Web服务器软件(如NGINX):优化缓冲、使用keepalive连接,以及将耗时任务分流到单独的线程池等措施,可以显著提升性能。例如,线程池可将磁盘密集型任务的速度提升近一个数量级。
希望您亲自尝试这些技术。我们期待了解这些技术为应用性能带来了哪些提升。欢迎在下方评论区分享结果,或在 X 上发布您的实践经历,并添加话题标签 #NGINX 和 #webperf!
互联网统计资源
Statista.com:2016年G20国家/地区互联网经济占国内生产总值的比重
Econsultancy:提升转化率的网站速度案例研究、技巧和工具
关于作者
相关博客文章
NGINX Plus R26 正式发布
NGINX Plus R26通过缓存JSON Web密钥集加快JWT验证,并强化TLS握手,从而提升安全性。NGINX JavaScript的新功能包括增强对异步函数的支持,以及实现WebCrypto API。
使用NGINX App Protect DoS保护gRPC应用,抵御严重的DoS攻击
gRPC具备开发人员设计和部署现代应用所需的速度与灵活性,但其开放性也使其极易受到第7层DoS攻击。NGINX App Protect DoS可保护gRPC应用免受此类破坏性攻击。
Ingress Controller 选型指南(第 2 部分):风险与面向未来的规划
了解选择错误的Ingress控制器可能带来的风险,以及如何从关键方面着手,让您的选择更好地适应未来需求。
NGINX Plus R19 正式发布
NGINX Plus R19扩展了监控功能,不仅提供更多指标,还新增了指标分析方式;增加试运行模式,用于测试限速效果;增强键值存储,以支持IP地址范围;并使限速更加动态。
NGINX现已正式加入F5
NGINX现已正式成为F5的一部分。Gus Robertson现任F5 NGINX业务部门负责人。他阐述了两家公司在人才、文化和愿景方面融合的价值,以及双方将如何携手增强NGINX的开源产品和商业产品。

