嗨热线网 > 科技 > 互联网 >

618将至,电商企业如何构建“新基建”应对流量

2020-05-21 11:56
    这个场景,很多电商人并不陌生:
 
    在大促活动中,若订单系统出现故障,从顾客抱怨,到层层上报,再到故障排查和处理,2个小时过去了。但在这2个小时里,成百上千的顾客在竞争对手那里购买了产品,损失严重,还有被媒体曝光的风险。
 
    不得不承认,即使是灾备能力最强的IT环境,也必然会在某个时刻遇到问题。当这些问题发生的时候,解决问题的速度就是决定企业综合实力的关键。
 
    下一个“618”大促就要来了,这对于电商平台来说,是个让人激动却也提心吊胆的日子。电商业务的特点比较明显:短期指数级业务波峰,从前端展示、业务处理、库存变动等方面都需要全天应对海量用户访问的冲击。而支持电商业务的关键,就在于后台系统是否具备稳定性、可扩展性和安全性。
 
    同时,随着5G、VR、AR、AI等新技术愈发广泛的应用,更高品质的内容、更强烈的社交属性、观众使用场景都出现突破性扩展,这也将促进用户数量和使用时长的进一步增加,对基础技术能力的要求进一步提高。
 
    1
 
    电商上云,不得不做
 
    多数平台创业之初的重点是业务的快速上线,会选择简单粗暴的低成本管理方式,一个网站、一台服务器就够了。但随着业务体量的大幅上升,企业开始堆硬件、做结构化拆分。然而,资源层容量和性能的瓶颈终会到来,这该怎么调整?
 
    平台调整组织和技术架构的原则是:
 
    应用层采用服务框架
 
    系统层采用异步消息
 
    数据层可以无限扩容
 
    在应用层,一个简单的电商系统,包含用户模块、库存模块、订单模块、支付模块。创业之初的单体应用复杂性高、交付效率低、扩展性和可靠性差,并且技术栈的限制也在阻碍着技术创新。而在微服务架构中可以划分出不同的业务板块,每个业务板块都可以独立开发、部署和上线,对应独立数据库,由独立团队维护,各司其职。
 
    在系统层,异步消息系统可以使主要业务异步化,增加系统的容错性,避免因业务调用接口不成功导致的交易失败。当用户下单时,仓储和配送对实时性要求并不高,订单消息可以发到异步消息队列系统,若投递不成功可以等待下次投递。
 
    在数据层,为了应对瞬间的海量访问,系统需要极强的可伸缩性。随着数据量增大,需要对数据库进行弹性扩容,灵活配置资源、匹配业务需求。
 
    基于电商行业的业务特点和技术诉求,电商上云是需要先解决问题再开源节流的。而理想的云计算是随取随用的IT基础设施,云计算服务的性能决定了电商企业能提升的效率幅度和降本程度。那么,企业该如何选择?
 
    一看云厂商的底层能力:是否在存储、服务器领域有优势,是否具备自主研发能力,整体的机制、运营模式、服务质量是否优质,稳定性如何等;
 
    二看性价比:电商业务场景需要满足的弹性伸缩、存储于计算分离等需求,是否能通过更低的价格实现;
 
    三看服务的持续性:包括网络性能、稳定性、安全性等方面。
 
    2
 
    “弹性扩容+存算分离”,解决电商的技术资源瓶颈
 
    从资源到应用,端到端弹性扩容怎么做?
 
    虽然云的确在成本、扩展、灵活性、快捷等方面有很大优势。但是,对云产品、云架构的灵活运用,是有一定技术门槛的。这时,如果可以根据实际业务需求按需进行存储和计算资源的弹性伸缩,就能使资源利用率大幅提升,也就是我们说的容器化改造。
 
    从技术角度,容器化改造是对应用整体微服务架构改造,再容器化,这样做可以带来如下好处。
 
    单独扩展:拆分为微服务后,可单独增加或缩减每个微服务的实例数量。
 
    提升开发速度:各微服务之间解耦,某个微服务的代码开发不影响其他微服务。
 
    通过隔离确保安全:整体应用中,若存在安全漏洞,会获得所有功能的权限。微服务架构中,若攻击了某个服务,只可获得该服务的访问权限,无法入侵其他服务。
 
    隔离崩溃:如果其中一个微服务崩溃,其它微服务还可以持续正常运行。
 
    整体应用容器化改造的流程包括6个步骤:应用分析、准备应用运行环境、编写开机运行脚本、编写Dockerfile文件、制作并上传镜像、创建容器工作负载。具体流程图如下:
 
    在应用分析阶段,企业需要了解自身应用的运行环境和部署形态。运行环境包括操作系统、运行环境、依赖包,部署形态包括周边配置和自身配置。
 
    在应用分析后,就需要准备好这些环境:
 
    安装Docker:应用容器化时,需要将应用构建为Docker镜像。您需要准备一台机器,并安装Docker。
 
    获取基础镜像版本名称:根据应用运行的操作系统,确定基础镜像。本例应用运行在centos:7.1操作系统中,可以在dockerhub中获取到基础镜像。
 
    获取运行环境:获取运行应用的运行环境,以及对接的MongoDB数据库。
 
    应用容器化时,一般需要准备开机运行的脚本,写作脚本的方式和写一般shell脚本相同。该脚本的主要目的是启动应用所依赖的软件,并且将需要修改的配置设置为环境变量。开机运行脚本与应用实际需求直接相关,每个应用所写的开机脚本会有所区别。请根据实际业务需求来写该脚本。
 
    镜像是容器的基础,定制镜像时,一般使用Dockerfile来完成。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建镜像的其中一层,因此每一条指令的内容,就是描述该层应该如何构建。制作完镜像后,每次应用的部署和升级即可通过镜像操作,减少了人工配置,提升效率。
 
    最后,创建容器工作负载,在工作负载列表中可查看到运行中的工作负载。
 
    以上容器化改造流程是基于华为云容器引擎CCE编写的,CCE是基于开源Docker和Kubernetes的企业级容器服务,提供企业级容器应用管理服务,支持Kubernetes社区原生应用和工具,可以简化云上自动化容器运行环境搭建。企业在使用CCE后,可以实现多云和混合云管理,也可灵活使用和管理本地和云端资源。
 
    通过存算分离,让每个Bit成本最优
 
    随着一次又一次的大促活动,电商企业积累了越来越多的数据,需要激发更多的数据价值变现。此外,实时推荐等智能化运营的兴起、购物体验持续优化的探索,也促使企业的数据处理架构,不仅仅限制于解决分析性能的问题,还要向着满足海量数据高效存储的转变。
 
    企业通常采用的模式,是按阶段购买服务器,服务器数量不断累加但也在不断淘汰。在这个过程中,会出现一些问题,比如计算性能跟不上数据增长速度,分批购买的服务器因型号、容量的不同导致维护困难,面对流量波峰波谷却无法实现弹性,这些都严重影响业务的增长。
 
    在大促期间,传统大数据存算一体的方案的局限性具体表现为:
 
    计算存储资源需求不均衡时,导致大量资源浪费;
 
    本地HDFS一般采用三副本冗余机制,磁盘利用率仅为33%;
 
    计算存储耦合的封闭架构难以向数据湖和大数据云化的方向演进。
 
    如果让存储和计算分离,以上问题都可以得到解决,在运算固定的情况下,存储还可以实现增长。此外,存算分离还可以实现不同业务间的授权,也可以避免因重复利用而消耗的成本。
 
    存储和计算分离是近几年值得关注的新技术。它不但能节约成本,还可以让资源根据业务需求弹性伸缩。为此,华为云推出了基于云服务的存算分离架构,据说可以大幅提升集群资源利用率,使综合分析成本可降低50%以上。
 
    存算分离+鲲鹏=结构化提升性价比
 
    大数据计算都是分布式计算,华为的经验是先降低单位计算成本,再结合现在的鲲鹏或是ARM处理器。ARM具有多核的优势,一般在手机里面可能是8核,在服务器芯片变成128核。在大数据运算过程中,处理器核数越多,大数据运算越有效。
 
    此外,大运算可以分裂成很多的小运算,在核数足够多的情况下可以很大程度上提升大数据的运算能力。加之ARM是国产化,在成本和耗电方面比X86更有优势。
 
    那么,在整体性能提升方面,华为云的“存算分离+鲲鹏”是怎么实现的?
 
    首先,要降低数据准备时间。华为的智能数据湖方案中,是采用Schema-on-read模式,让数据实时入湖,直接基于原始数据分析;同时,采用增量式分析,小批分次持续分析。更重要的是,通过存储和计算解耦、计算按需弹性伸缩,有效支撑业务波峰波谷,更快完成计算。
 
    华为云“存算分离+鲲鹏”大数据云服务采用计算存储分离架构,存储基于华为云对象存储实现11个9的高可靠,无容量限制,可以支撑企业数据量持续增长;同时,计算资源可以支持0~N弹性扩缩。
 
    计算存储分离后,通过华为自研Carbondata对数据进一步优化组织,实现基于数据湖的事务管理(据说是业内首创),支持流数据自动去重、避免遗漏,支持数据增删改,并实现最高隔离级别的ACID,结合智能多维索引,基于业务感知的软件缓存技术,实现数据访问进一步加速。
 
    其次,通过软硬件结合提升性能。性能提升的另一个方向是软硬件结合、垂直优化,华为鲲鹏处理器具有多核高并发能力,再结合自研EulerOS,可以提供多类型优化,如JDK,软件多实例绑核,RoCE网络加速,加解密、压缩等热点函数硬件加速,充分释放硬件算力。如此一来,在性能相当情况下,成本下降30%,为大数据用户提供更高性价比的智能数据湖。
 
    不仅如此,华为云走的是开放生态路线。华为云智能数据湖完全兼容开源原生接口,可以兼容全部的主流大数据生态,这样一来,企业在平滑迁移上云的过程中就不需要做任何改造。
 
    在华为云看来,基于鲲鹏算力和架构,为企业提供了适用于当前大数据应用的性价比较好的解决方案,同时,基于高并发性能的鲲鹏算力,华为云也已形成自己独特的竞争优势。
 
    据了解,目前,华为云已经将这样的方案落地到游戏电商、直播、游戏等行业,并且能够满足拥有互联网基因的企业大数据应用场景。实则,以为各位提供了一个更佳的云上新“武器”,等你来尝试。
 
    3
 
    创新,从这里开始
 
    我国拥有全世界最大规模的电商市场,在新基建风口下,电商平台、移动支付、直播带货、快速物流等新业态,正在顺势生长。电商企业的发展思考也可以反推到互联网行业的每一家企业。
 
    华为公司副总裁、华为云业务总裁郑叶来,不久前曾表示:
 
    在“新基建”时代下,算力成为新的生产力,数据成为新的生产要素,云、AI(人工智能)、5G则是新的生产工具,而华为基于丰富的行业实践经验和资深数字化实践,可以为合作伙伴提供更优质的服务。
 
    华为近几年持续加大在云、5G、计算等相关领域的投入,2019年,华为在泛计算行业进行了大量的投入和布局,华为首次发布了“鲲鹏+昇腾”的计算战略,重磅发布“有所为、有所不为”的商业策略,并且构建开放的计算产业生态。
 
    同时,华为还整合了存储、计算及云服务相关组织,成立了Cloud&AIBG,即云与计算业务部,成为继运营商业务、企业业务和消费者业务之外的第四大业务,通过对资源和组织的整合从芯片到数据中心、从硬件到软件、从IT基础设施到云服务、从边缘计算到云计算,将资源全部集结,将华为云打造成业界率先拥有全栈能力的云,为新基建时代的底层创新提供组织和人才保证。

郑重说明:网站资源摘自互联网,如有侵权,麻烦通知删除,谢谢!

联系方式:hiholiday12399@gmail.com