发布时间:2025-02-08 13:38:23 点击量:
HASH GAME - Online Skill Game GET 300
11.1任务概述什么是HTTPSHTTPS默认采用RSA加密算法,客户端在接入时,RSA算法会消耗大量的CPU算力。客户端接入请求越多,需要的CPU算力就越大。C/S架构可以充分利用两端硬件环境的优势,将任务合理分配到客户端和服务器端,从而降低系统的通信开销。B/S架构是随着互联网技术的兴起,对C/S架构的一种改进架构。在这种架构下,用户工作界面通过浏览器实现,只有极少部分事务逻辑在前端(浏览器)实现,主要事务逻辑则在服务器端实现。C/S架构B/S架构
11.1任务概述目前常见的基于Linux的Web系统架构LAMP(Linux+Apache+MySQL+PHP)LNMP(Linux+Nginx+MySQL+PHP)LNMP架构使用Nginx。Nginx是一款跨平台轻量级的Web服务器,可作为HTTP服务器、Web缓存服务器、反向代理服务器、负载均衡服务器等,由于具有体积小、量级轻、高并发能力强等特点,得到国内外许多互联网公司的广泛使用。Nginx具有轻量级、占用资源少、负载均衡、高并发处理强、静态内容处理高效等特点。LAMP架构使用Apache。Apache是目前主流的Web服务器之一,由于具有良好的跨平台性和安全性而被广泛使用。Apache拥有丰富的模块组件支持,其稳定性强、漏洞少、动态内容处理强。
11.1任务概述鲲鹏Web应用架构的特点高性能02OPTION鲲鹏Web应用架构基于鲲鹏920处理器提供的KAE,可以实现HTTPS处理中RSA2048非对称加解密算法的硬件卸载,大幅降低了CPU资源占用,HTTPS处理性能约为软件计算的2倍,可以释放更多CPU算力用于业务处理。鲲鹏Web应用架构基于鲲鹏920处理器的多核架构和多核调度优化算法,使具有高并发、低时延、计算密集特点的Web应用性能得到了明显提升。
11.1.1任务概述某电商公司前期在鲲鹏云主机上搭建网站积累了一定的经验。现在该公司开始构建自己的电商门户网站来支撑海量用户,以应对后续的高并发事务,因此要在鲲鹏云主机上搭建LNMP网站和进行相关负载均衡集群的配置来支撑高并发和PHP个性化页面的呈现。为此,需要考虑以下因素。LNMP网站架构是目前国际流行的Web框架,该框架包括Linux操作系统、Nginx网络服务器、MySQL数据库、PHP编程语言。所有组成产品均为免费开源软件,这4种软件组合到一起,即可形成一个免费、高效的网站服务系统,所以电商公司希望采用LNMP网站架构来进行电商门户网站的搭建、部署。电商公司希望先在华为云的鲲鹏云主机上小规模部署,验证其可行性及完成前期的性能测试后,再在基于鲲鹏处理器的TaiShan物理服务器上大规模部署。电商公司希望在基于鲲鹏处理器的TaiShan200服务器上安装、配置加速引擎,使用该服务器提供的硬件加速架构。
11.1.2LNMP实践Nginx负载均衡配置05OPTION接下来配置最少连接负载均衡。使用以下命令修改云主机的Nginx配置文件。如下图所示,即可实现负载均衡最少连接数算法配置。vim/usr/local/nginx/conf/nginx.conf使用root用户身份执行以下命令,重新启动nginx服务。/usr/local/nginx/sbin/nginx–sreload最少连接是指把请求分配到连接数最少的服务器。打开浏览器,在其地址栏中输入,不断刷新页面,观察页面结果,可看到是根据当前连接数最少的主机进行分配的。打开浏览器,在其地址栏中输入,页面按照“thisisnode2”和“thisisnode1”的页面顺序进行刷新。
11.1.2LNMP实践Nginx负载均衡配置05OPTIONvim/usr/local/nginx/conf/nginx.conf使用root用户身份执行以下命令,重新启动nginx服务。/usr/local/nginx/sbin/nginx–sreload最后配置ip_hash负载均衡。使用以下命令修改云主机的Nginx配置文件。如下图所示,即可配置ip_hash负载均衡。ip_hash负载均衡根据访问客户端IP地址的哈希值分配,这样同一客户端的请求都会被分配到同一个服务器上,如果涉及会话问题,则这是最好的选择。打开浏览器,在其地址栏中输入,页面上的内容是不会变化的,因为是使用同一个PC的IP地址进行的访问。
11.1.3 鲲鹏加速器的配置与调优加速器软件包的两种安装方式安装方式RPM安装源码安装安装说明为了方便用户使用,提供部分商用操作系统的RPM安装包,RPM可用于管理Linux各项套件的程序,可以使用rpm--help命令获得更多帮助通用的源码安装方式,使用configure命令进行编译及安装配置,使用make命令进行源码编译,使用makeinstall命令进行安装优点、缺点优点:安装后可以直接使用,不需要编译及安装等操作。缺点:支持范围有限,目前只支持SUSE15.1、CentOS7.6及EulerOS2.8优点:支持范围广,支持大部分Linux操作系统,支持修改源码进行编译及安装。缺点:操作复杂,需要做一些额外的配置
11.1.3 鲲鹏加速器的配置与调优RPM安装流程使用以下命令查看加速器软件包。安装检查03OPTION[]#rpm-qagrepuacceuacce-1.0.1-1.centos7.6.aarch64//显示该格式内容时说明安装成功源码安装流程如下。①使用远程登录工具,将KAE源码包复制到自定义路径下。源码包中的代码包含内核驱动、用户态驱动、基于OpenSSL的KAE和zlib这4个模块。其中,内核驱动与用户态驱动为安装必选项,KAE与zlib按实际需求选择安装。
11.1.3 鲲鹏加速器的配置与调优RPM安装流程安装后检查06OPTION通过OpenSSL命令验证加速器是否生效。这里以验证RSA性能为例进行说明,命令如下。通过RSA性能验证可以看到,指定KAE之后,RSA的性能明显提升。另外,除上述方法外,在执行RSA性能验证命令过程中,还可以在新的终端上查看HPRE加速器的硬件队列资源情况,命令如下。cat/sys/class/uacce/hisi_hpre-*/attrs/available_instances256255
在作为反向代理服务器的同时,Nginx通过upstream配置就可以实现负载均衡的功能,在收到一个请求后,可以从upstream配置的服务器集群中按照一定的策略选择一个实际服务器来处理请求,这一过程就是负载均衡。11.2基于鲲鹏架构的Web应用实践2负载均衡原理示意使用Nginx实现的负载均衡配置及鲲鹏加速器的配置,都是基于鲲鹏架构Web应用实践典型方案的组成部分,用以应对互联网公司不同的业务场景。负载均衡原理示意
11.2基于鲲鹏架构的Web应用实践2Memcached的特点(4)服务器端不互相通信的分布式各个Memcached服务器不会互相通信以共享信息,而是通过客户端的算法进行通信。(1)协议简单Memcached的服务器客户端通信并不使用复杂的XML等格式,而是使用简单的基于文本行的协议。(3)数据存储于内存Memcached中保存的数据都存储在Memcached内置的内存中,因此重启Memcached、重启操作系统会导致全部数据消失。(2)支持多种消息处理Memcached使用基于Libevent的消息处理机制,Libevent支持多种系统的消息处理。
12.1.1昇腾AI处理器昇腾910处理器主要用于深度学习模型训练场景,可以为模型训练提供强大算力。昇腾910芯片采用7nm先进工艺,单芯片计算密度在业内领先,是同时代的英伟达TeslaV100GPU的两倍,16位浮点数(FP16)算力达到256TFLOPS,8位整数(INT8)算力达到512TOPS,同时支持128位通道全高清视频解码(H.264/H.265)。昇腾310处理器主要用于模型推理场景。推理场景对算力的需求相对较小,昇腾310芯片采用12nm制造工艺,最大能耗仅为8W,16位浮点数(FP16)算力达到8TFLOPS,8位整数(INT8)算力达到16TOPS,支持16位通道全高清视频解码,可以很好地满足边缘计算产品和移动端设备进行模型推理的算力需求。昇腾AI处理器910昇腾AI处理器310
12.1.1昇腾AI处理器昇腾AI处理器使用华为自研的达·芬奇架构,针对深度神经网络大量矩阵运算的特点,设计了高性能的3DCube矩阵计算单元,每个矩阵计算单元在一个时钟周期内可以完成4096次乘加计算,再结合向量计算单元和标量计算单元,可以非常灵活且高效地完成各种运算。达·芬奇架构使用了统一硬件架构,可以进行多核灵活扩展以适应不同应用场景。一次开发可支持多场景部署、迁移和协同,统一的架构提升了上层软件开发效率,也带来了能耗上的优势。达·芬奇架构可以支持能耗从几十毫瓦到几百瓦的芯片,可灵活应对不同场景,满足性能与能耗的需求。除搭载基于达·芬奇架构的AI加速模块外,昇腾AI处理器还搭载了硬件级别的图像处理模块,可以快速完成常见的图像预处理操作,如图片编/解码、缩放、色域转换等。此外,昇腾AI处理器还拥有高效的缓存系统和丰富的I/O接口,能灵活应对各场景下的计算需求,为各场景下的AI应用提供强劲的基础算力。
12.1.2鲲鹏AI计算服务器Atlas800训练服务器华为的Atlas800训练服务器(型号为9000)是基于鲲鹏920和昇腾910处理器的AI训练服务器,具有极强算力密度、超高能效与高速网络带宽等特点。该服务器广泛应用于深度学习模型开发和训练,适用于智慧城市、智慧医疗、天文探索、石油勘探等需要大算力的行业领域。Atlas800推理服务器Atlas800推理服务器(型号为3000)是基于鲲鹏920处理器的服务器,可支持8个Atlas300I推理卡(型号为3000),可提供强大的实时推理能力。
12.2.1任务概述训练并部署口罩检测模型对算力有较高需求,鲲鹏智能计算平台基于鲲鹏处理器和昇腾AI处理器提供灵活且高效的算力支持,可以方便高效地训练、部署口罩检测模型。本案例将探索基于昇腾AI服务器完成口罩检测模型的训练及部署。本案例包含以下两个任务。(1)基于Atlas服务器的口罩检测模型训练,模型训练部分对算力有较高的要求,搭载了鲲鹏920CPU和昇腾910AI处理器的Atlas系列训练服务器可以高效地完成训练过程。(2)基于kAi1s的口罩检测模型推理部署,边缘侧的AI模型推理部署需要平衡算力和能耗,搭载了鲲鹏920CPU和昇腾310AI处理器的kAi1s云服务器可以很好地满足推理部署对性能和能耗的要求。
算法选择03OPTION12.2.2基于Atlas服务器的口罩检测模型训练目标检测任务不仅要判断目标的类别,还要定位目标的位置。在本案例中,不仅要判断目标的类别,包括人(person)、脸(face)、口罩(mask),还要定位目标框的位置。实现目标检测的算法有很多,经典的深度学习算法包括更快的区域卷积神经网络(FasterRegion-basedConvolutionalNeuralNetwork,FasterR-CNN)、YOLO(YouOnlyLookOnce)、单次多边框检测(SingleShotMultiboxDetector)等。YOLOv3是YOLO算法演进的第3个版本,也是目前应用得最多的版本之一。YOLOv3的精度稍好于SSD,比RetinaNet差,但是速度是SSD、RetinaNet、FasterR-CNN的2倍以上。YOLOv3处理单张输入尺寸为320像素×320像素的图片仅需22ms,可以很好地满足实际生产环境对实时性的要求。
算子开发03OPTION12.2.3基于kAi1s的口罩检测模型推理部署当遇到算子库不支持的算子或想提高算子性能的时候,可以使用昇腾软件栈提供的张量加速引擎(TensorBoostEngine,TBE)来进行自定义算子的开发。领域特定语言(Domain-SpecificLanguage,DSL)对外提供高阶封装接口,开发者仅需要使用DSL接口完成计算过程的表达,后续的计划创建、优化及编译都可通过已有接口一键完成,适合初级开发者。DSL开发的算子性能可能较低。张量迭代内核(TensorIteratorKernel,TIK)对外提供底层的封装接口,提供对缓存的管理和数据自动同步机制,需要开发者手动计算数据的分片和索引,这要求开发者对达·芬奇架构有一定的了解,入门难度更高。TIK对矩阵的操作更加灵活,性能更优。领域特定语言张量迭代内核