你抢的不是春节红包而是云


作者 | 马超

编辑 | 胡巍巍

来源 | CSDN(ID:CSDNnews)

近年来,红包大战堪称是新春佳节中最精彩的开年大戏。

2015年腾讯以超过5000万元的天价,拿下央视春晚独家合作权,一夜之间为微信支付带来1亿多张新增银行卡绑定,仅用一天就完成支付宝几年走过的道路,被马云称为阿里史上的珍珠港事件,自此也开启了互联网巨头春节红包营销的序幕。

2016年春晚,支付宝砸下2.69亿夺得央视春晚的独家合作权,并创造史上最经典的集五福红包玩法,当年支付宝宣布向全国观众豪派8亿元红包,除夕当天,支付宝上加好友、换福卡、发红包的次数达到677亿次。 

而2020年春节,快手早早就与央视春晚达成独家合作关系,本以为今年红包大战的C位已经没有悬念,但是阿里突然在1月11日宣布成为淘宝春晚独家电商合作伙伴,虽不发红包,但是阿里带来了10亿元的购物补贴,并将抽取5万名消费者清空购物车,为红包大战再添了一把火。

而今年令人纠心的疫情,也必将使线下活动有所减少,同时也会增加线上活动的热度,这些客观因素都必将使今年的红包大战更具看点。其实从技术角度讲红包大战最大的看点是云计算。

抢红包背后的技术看点之一:分布式架构

如果想承接抢红包这样一个短时上亿并发量的场景,即便是世界最强超算也力不从心,所以这就要求红包系统首先要满足分布式架构的需求,而分布式系统也有一个重要的原则CAP定理。

CAP定理:是指在一个分布式系统(Distributed System)中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance),呈不可能三角关系,既三个目标只能同时做到两点,不可能三者兼顾。

其实CAP定理并不难理解,因为如果满足一致性、高可用性,那么一旦集群内有节点故障,为保证数据一致,必将使系统整体陷入中断。

如果既满足可用性、又满足分区容错性,那么必然存在某个节点在系统对外提供服务时出现宕机,而这时各节点的数据一致性,又无法完全保证。

结合红包系统的需求分析,系统可用性肯定是要首先保证的,如果真是春晚当天页面无法访问,那恐怕营销不成,反而会让用户路转黑了。

而且在大流量的冲击下,节点故障也是难免,因此分区容错性也需要保证,这样看来,能稍微放一放的只有数据一致性,因此从这个角度上讲,红包的总额必然会围绕期望值上下浮动。

目前分布式系统交易分发,一般有两种方式,一是哈希法,将服务请求序列化后计算哈希值,然后根据这个哈希值将请求分配到不同的节点上,当然直接把请求按照顺序循环发送集群内的服务器,也可以看作是哈希法的变种,不过这会使入口处的负载设备成为瓶颈。二是将所有请求人为分成几份,每个集群只处理自己接到的请求,以此为降低入口流量的压力,但这样的缺点是,很难将请求平均分配。

抢红包这样的系统,只能将以上两种方案结合。首先根据历史经验,将交易量相量的地区结合,分为一组,比如北京、天津和辽宁、长春分为一组、上海、苏州、南京分为二组等等以此类推,与之对应的云集群,都有自己独立的红包额度,也只处理发给自己的请求。这样能避免入口的瓶颈,也尽量平均分配了请求的处理量。

接下来每个集群,也会将额度分配给内部的服务器,然后每个服务器会将自己库存范围内的请求,直接标志为成功,并在自己库存范围的基础上,还会多预留一定比例的需求为待定,待统一减库存后再确定能否待请求能否成功。

从分布式的角度来看,分区域与分库存是系统设计的基础环节,而接下来要做的就是上云了。

抢红包背后的技术看点之:云计算

2019年双十一,阿里宣布自身全部核心系统已经完成上云,这是一个非常惊人的成就,随着传统的软硬件分离,迭代的模式逐步显现出局限性,现今的应用越来越复杂,对算力的要求越来越高,而算法、软件和硬件的隔阂造成巨大算力的浪费,已经无法满足在超大规模计算机场景下,提升IT计算效率、降低计算成本的诉求。

这时“云”的价值开始体现,但是云时代软件开发的方法论与模式,与之前时代完全不同,因为云最大的特点就是可持续交付和微服务化,完全上云不但有巨大的好处,也意味着巨大的挑战。

分布式与云计算就像一对孪生兄弟,必须要结合使用才能发挥出最大的价值,分布式系统的各节点最好都是整齐划一,这样调度成本都可能会降到最低。

而如果出现有的节点算力强,有的节点算力弱,那么受木桶原理制约,系统的性能就很可能被算力最弱的节点所限制,而云这种屏底层,向客户交付标准化硬件的技术,在分布式的架构下就会大显神威。

也恰恰是由于以上原因,我们可以看到参与这种红包活动的企业,往往都是纯线上企业,因此一旦企业有线下网点的布局,那么在参与红包活动时都需要考虑给网点的发起请求调高优先级,进行区别对待,这种非标标准的请求会让系统复杂度呈几何级数增长。

所以从云的角度上看,用户抢的不是红包,而是在各自区域请求中队列中的云资源。

国产云计算发展的坎坷之路

虽然“云”的好处很多,但是其发展并不算特别顺利,在十年前概念提出伊始,普遍不为人看好,甚至被某IT大佬戏称,“云计算只是新瓶装旧酒”,其背后的原因还是虚拟化层所耗的资源无法避免。

在阿里云创始人王坚院士,参加央视《朗读者》节目时曾表示,阿里云是工程师拿命来填的,因为第一个用电的人,第一个坐飞机的人也是拿命来填的。

这还真不是危言耸听,在成立最初几年,阿里云的年离职率高达60%以下,甚至在2012年阿里的年会上,王坚还因为看到了那些离开的同事,而失声痛哭。

但情况从2015年开始改观,阿里云在Sort Benchmark的排序竞赛中,仅用不到7分钟就完成了100TB的数据排序,打破了Apache Spark之前23.4分钟的纪录。

后又获得2017年中国电子学会颁发的科技进步奖之特等奖,这也是该奖项设立以来的首个特等奖。

接下来,神龙服务器和飞天操作系统的诞生,基本克服了云的弱点,并将云的规模效应发挥到极致。

神龙服务器:阿里云降低虚拟层消耗的秘决,在于神龙服务器这块完全自研的MOC卡,正是MOC的居中调度,让阿里神龙服务器不再使用宝贵的CPU资源进行虚拟化层的调度工作,从而大大降低云转换成本。

飞天操作系统:正所谓韩信点兵,多多益善,飞天能将百万级服务器连成一台超级计算机,还能有条不紊地通过云计算向用户提供计算能力。

我们看到在飞天的基础公共模块之上,有两个最核心的服务,一个是盘古,另一个是伏羲。

盘古是存储管理服务,伏羲是资源调度服务,飞天内核之上应用的存储和资源的分配都是由盘古和伏羲管理。具体见下图:

可以看到飞天中的众多模块都是以上古天神命名的,其中:

夸父:负责网络通信,由于飞天是要将众多服务器连接在一起的,夸父正是完成他们之间的通信功能。

女娲:与负责命名与协同工作,与神话中造人的工作不同,做为飞天中的唯一女性女娲负责将所有子模块的命名与协调工作。

盘古:负责分布式存储。

神农:负责监控,随时治病救人。

伏羲:负责任务调度及资源管理,这也和精通音律和伏羲氏有点渊源。

大禹:负责集群布署。

钟馗:负责安全,负责捉鬼。

在国产云计算行业,其它大厂也都有各自的特长,比如腾讯做为全球社区的巨头腾讯,其QQ类的社交软件,面对着比其它应用多出几倍的流量短暂时突发场景,在面对这样的问题时,以虚拟机为单位补充资源,会很浪费资源。

因此腾讯在容器化方面做了很多细节工作,以满足这种突发、短时的弹性需求。

而腾讯近期开源的TencentOS Kernel,在容器运行所需的资源调度弹性、系统性能及安全等层面做了很多优化,可谓是开源+“容器云”的典范。

未来:打开水龙头就能使用云

通过自主掌控的技术,国内的科技巨头,在云计算领域已经走向了世界的前列,通过云大幅提升计算效率,实现能够突破传统IT时代的算力瓶颈,凸显云计算的整体优势。

云正在与区块链结合成为Baas,正在与AI结合成为Aaas,云正在不断下沉,变成互联网时间的空气和水一样基础设施。

而未来我们可以不再关心云计算背后的细节,就像不用关心水是如何过滤、运送一样,打开水龙头就可以使用到云,未来云计算的发展空间和使用场景还会不断拓宽,未来可期,拭目以待。 

【END】

热 文 推 荐 

☞「今天沾一口野味,明天地府相会!」AI如何抗击「野味肺炎」

☞无代码开发究竟是不是伪需求?

☞云计算的 2020:云原生崛起,重新定义软件

疫情严重,潜伏期也有传染性?科技公司在行动

☞程序员谈从科比的曼巴精神中,我们能学到什么?

用开发者的方式共克时艰!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/519423.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PLSQL查询字段为科学计数法,修正显示

打开PLSQL工具— toad中->view->option->data->display large number in scientific notation pl/sql developer中->tools->preferences->sql windows->number fields tochar 在PLSQL中,数据库中记录的NUMBER类型的数据,如果…

阿里云不做SaaS、要练好内功被集成,发布SaaS加速器

在3月21日的2019阿里云峰会北京上,阿里云发布新产品SaaS加速器:人工智能、虚拟现实等技术能力被集成为模块,ISV和开发者只要简单拖拽,就可以快速搭建SaaS应用。 “我想试驾一下,怎么办?” “我们集成了虚拟…

阿里云明确生态边界:不做SaaS、被集成

“练好内功被集成,阿里云自己不做SaaS,让大家来做更好的SaaS。”3月21日,在2019阿里云峰会北京现场,阿里云智能总裁张建锋首次明确阿里云的生态边界和被集成战略。 大会舞台上,张建锋与20多位合作伙伴代表一一握手相迎…

windows mysql5.7 忘记root密码

编辑此文件 添加一行 skip-grant-tables重新启动mysql net stop mysql net start mysql跳过密码登陆 mysql -u root -p 直接按回车2次 修改密码 update mysql.user set authentication_stringpassword("root") where user"root";刷新权限 flush pri…

Docker容器资源管理,你真的学会了吗?

作者 | 张晋涛编辑 | 胡巍巍来源 | GitChat(ID:GitChat)Docker 上手很容易,但如果将其应用于生产环境,则需要对它有更深入的理解。只有这样,才能确保应用符合我们的预期,或在遇到问题时可及时解…

java封装原则_跟我学java编程—理解Java面向对象的封装原则

前面一节内容讲到了抽象与对象,抽象是把同类事物的共同特征抽取出来归纳为类,类的具体实例为对象。例如:把具有汁液多、糖分多、含有挥发性芳香物质、可以生食等特征的事物归纳为水果类,苹果、葡萄、生梨则为水果类的具体示例对象…

天桥调参师秘籍:一份深度学习超参微调技术指南

随着深度学习的兴起,越来越多的人从事算法工程师这一岗位。有时候他们自嘲自己为“天桥调参师”。当然,算法工程师的工作内容并没有那么简单,因为设置超参数的过程需要专业知识和广泛的试验和试错过程。尤其是针对学习率(learning…

Springboot集成axis1.4

文章目录1. 引入依赖2. Servlet3.接口4.实现类5.配置工厂6.启动类7. server-config.wsdd8. 访问1. 引入依赖 <!--axis start --><dependency><groupId>org.apache.axis</groupId><artifactId>axis</artifactId><version>1.4</ver…

疫情面前,医院是否需要数据中台?

来源 | 亲爱的数据&#xff08;ID&#xff1a;deardata&#xff09;作者&#xff1a;谭婧&#xff0c;虎嗅认证作者&#xff0c;《亲爱的数据》公众号出品人&#xff0c;香港浸会大学硕士&#xff0c;N年前高考作文满分得主。曾负责中国节能集团控股企业战略管理工作&#xff0…

【机器学习PAI实战】—— 玩转人工智能之综述

绪论 人工智能并非新的术语&#xff0c;这个概念由来已久&#xff0c;大约从80年代初开始&#xff0c;计算机科学家们开始设计可以学习和模仿人类行为的算法。人工智能的发展曲折向前&#xff0c;伴随着数据量的上涨、计算力的提升&#xff0c;机器学习的火热&#xff0c;以及…

一文纵览EMAS 到底内含多少阿里核心技术能力

EMAS的整体定位是阿里巴巴移动技术对外输出的主窗口&#xff0c;沉淀了阿里巴巴近10年在移动互联网技术架构上的积累以及在一系列垂直场景中所实践的核心技术能力。一方面&#xff0c;EMAS希望为广大开发者提供安全、稳定、快速、弹性的移动应用基础设施&#xff0c;另一方面也…

解决Windows中PLSQL连接虚拟机中Oracle缓慢的问题

文章目录1. 原因分析2. 解决方法1. 原因分析 Linux系统中的DNS解析在寻址的时候出现“错误”。这个跟我在用桥接模式连接网络的时候&#xff0c; 错误配置了“Network Configuration”中的DNS有关&#xff08;在用Bridged模式联网时&#xff0c;可以不 用配置DNS&#xff09;。…

万字长文!Unix和Linux你不知道的那些历史(详解版)

作者 | 程序员小乐来源 | 程序员小乐&#xff08;ID:study_tech&#xff09;00 前言 UNIX 与 Linux 之间的关系是一个很有意思的话题。在目前主流的服务器端操作系统中&#xff0c;UNIX 诞生于 20 世纪 60 年代末&#xff0c;Windows 诞生于 20 世纪 80 年代中期&#xff0c;…

“阿里巴巴小程序繁星计划”:20亿扶持200万小程序开发者和100万商家

3月21日&#xff0c;在2019阿里云峰会北京站上&#xff0c;阿里巴巴旗下的阿里云、支付宝、淘宝、钉钉、高德等联合发布“阿里巴巴小程序繁星计划”&#xff1a;提供20亿元补贴&#xff0c;扶持200万小程序开发者、100万商家。凡入选“超星”的小程序&#xff0c;入驻支付宝、淘…

linux 如何搭建sftp服务器

sftp采用的是ssh加密隧道&#xff0c;安装性方面较ftp强&#xff0c;而且依赖的是系统自带的ssh服务&#xff0c;不像ftp还需要额外的进行安装 文章目录一、服务器搭建分配二、sftp服务器搭建1. 创建sftp组2. 用户组3. 绑定用户组4. 配置5. 目录权限6. 用户、用户组、权限7. 关…

只需10分钟!就能用Flask,Docker和Jenkins部署机器学习模型

在生产环境中部署机器学习模型是数据工程中经常被忽视的领域。网上的大多数教程/博客都侧重于构建、训练和调整机器学习模型。如果它不能用于实际的预测&#xff0c;那么它又有什么用呢&#xff1f; 接下来了解一下有哪些部署选项吧&#xff1a;评估选项 在生产中部署机器学习模…

刚发布!新型病毒下,程序员可在家免费学习了!

亲爱的CSDN家人们&#xff1a;疫情当前&#xff0c;这个春节有点“寒”。截止1月31号24时&#xff0c;新型冠状病毒在全国已确诊11791名&#xff08;数字取自&#xff1a;人民日报8:40分发布信息&#xff09;&#xff0c;疑似病例已1w&#xff0c;受其影响&#xff0c;全国各地…

阿里巴巴的微服务开源之路

2019阿里云峰会北京开发者专场 侠之大者&#xff0c;为国为民。 在金庸小说中&#xff0c;郭靖和黄蓉是“侠之大者&#xff0c;为国为民”的典范&#xff0c;他们以布衣之身帮助宋军守护襄阳十余年。 技术的世界里&#xff0c;并无大小之分。 但当一群程序员由服务公司内部…

一文纵览自然语言生成的发展

人们对人工智能的兴趣随着科幻电影的诞生和发展变得愈发浓厚。每当我们听到“人工智能”这个词&#xff0c;便会联想到《终结者》、《黑客帝国》、《我&#xff0c;机器人》等电影。 机器人具有独立思考的能力在目前看来还比较遥远&#xff0c;但机器学习和自然语言理解领域已经…

java生成html表格数据_使用Java将表格数据导出成Excel格式

前言&#xff1a;本文使用后台处理的办法导出前端表格中显示的数据。引入依赖org.apache.poipoi3.17书写PoiUtilspublic classPoiUtils {public static ResponseEntity exportExcel(List marketList) throwsIOException {HttpHeaders headersnull;//创建文档HSSFWorkbook workb…