收藏 | 90后开发者的11套关于服务调用和消息发送的解题思路

简介: 第四届阿里中间件性能挑战赛回顾。

阿里中间件性能挑战赛至今为止已经成功举办四届,大赛是由阿里巴巴集团发起,阿里巴巴中间(Aliware)、阿里云天池联合举办,是集团唯一的工程性品牌赛事。大赛的初衷是为热爱技术的年轻人提供一个挑战世界级技术问题的舞台,希望选手在追求性能极致的同时,能深刻体会技术人的匠心精神,用技术为全社会创造更大的价值。

_1

第四届阿里中间件性能挑战赛以“挑战双十一万亿级服务调用”为主题,以开源项目为背景,基于Apache Dubbo 和 Apache RocketMQ这两个开源项目,分别实现一个高性能Service Mesh Agent组件完成服务注册与发现、协议转化、负责均衡的功能,以及实现一个进程内的队列引擎,完成单机可支持100万队列以上的性能。

»»关注 “阿里巴巴中间件” 公众号,回复“挑战赛”,获得Top11解题思路。(持续更新)


**

-变化一:更庞大的参赛队伍和人数-

**

9I8A0076

第四届阿里中间件性能挑战赛从4月26日启动,到7月22日结束,历近3个月。此次大赛分为内部赛场和外部赛场,内部赛共有273支队伍,341人报名,来自阿里的44个BU。外部赛共吸引全国3101支队伍,3435名选手,覆盖7个国家和地区、432所海内外高校、480+家企业。经过激烈角逐,全国TOP11团队产生,暨分获冠亚季军和优胜奖:

冠军:Blink`

亚军:做作业、98K

季军:强迫症康复中心、===BASELINE===、YLJZ

优胜奖:LJY=+∞、Zaun、DDDDDD、RDP飞起来、三个火枪手

他们将分别获得20万元,8万元,3万元和1万元的大赛奖励,用于参赛选手在技术领域的进一步深造和课外学习。此外,作为挑战赛的独立大赛单元,设置了极客挑战赛,并采用国际上通用的24小时黑客马拉松赛制,不仅挑战着选手的脑力,也挑战着选手的体力,经过整整24小时的鏖战,江海挺、徐哲、杨晓、石超各赢得了4万元的西行游学基金,用于美国游学、参加国际顶级技术会议和拜访硅谷科技企业。


-变化二:场景更贴近实战-

DSC_2679

此次挑战赛以“挑战双十一万亿级服务调用”的实战场景作为主题,让选手们亲临“双十一现场”,真实模拟压力场景,处理世界级难题。

众所周知,随着来自业务需求的压力逐渐增长,系统架构的微服务改造越来越流行。但改造过程中充满了不确定性。

将单体系统剥离、引入服务化组件、将内部调用转化为远程调用、解决因为调用远程化和分布化而带来的各种次生问题,例如网络问题、安全问题、状态管理问题、一致性问题等等。选手们面对用户基数大、并发访问量大、突发极端峰值的双十一场景,如何保证服务调用的可用性和服务性能将成为本次比赛的关注重点之一。

.

如何设计一个存储引擎,实现单机可支持100万以上队列,以满足日益增长的业务需求和云上输出,是本次比赛的另一个关注重点。

不同于上一届,今年大赛开发语言不限的设置也让大赛场景不限于Java领域,参赛团队可以选择自己中意的技术,主流的、非主流的,让更多的开发者参加到中间件性能挑战的大赛中。


-变化三:赛题更贴近开源-

FS3_8545

无论是会议还是比赛,内容总会契合当下大家所关注的、所讨论的、所期待的。例如作为云计算行业现象级的大会– 云栖大会,从2009第一届的“融合、创新、发展”到2017年的“飞天、智能”,以及即将到来的2018年的“驱动数字中国”,似乎成了中国云计算行业发展历程的脚本,记录着创新者们的进化。

阿里中间件性能挑战赛的赛题已经成为了行业内的技术风向标。今年的阿里中间件性能挑战赛源于开源、回馈于开源,将ApacheDubbo 和 Apache RocketMQ 分别作为大赛初赛和复赛赛题的内容,正是出于开源正在对整个世界产生越来越大影响的大背景下提出的。

从2017年开始,阿里巴巴开源的脚步开始加速。

2017年9月,RocketMQ 在Apache毕业,成为了Apache顶级项目(TLP)。

10月份,OpenMessaging发布,分布式消息中间件、流处理领域的应用开发标准,已正式入驻Linux基金会, 这也是国内首个在全球范围内发起的分布式消息领域国际标准。

2018年2月,将Dubbo捐献给Apache,进入apache孵化期,2018年7月,Dubbo官方域名更新到Dubbo.apache.org,页面焕然一新,并启用新logo,品牌全面升级。

2018年7月,启动新的开源项目Nacos,支持Dubbo生态发展。近期,Dubbo 在GitHub的star数突破2万,成为目前国内唯一一家star数超过2万的Java开源项目。

初赛赛题:《Service MeshAgent for Apache Dubbo(incubating)》

复赛赛题:《Apache RocketMQ消息缓存设计》


**变化的是逐年提升的赛事关注度

不变的是选手的热情和赛事的专业程度**

FS3_9298

依旧是强大的参赛团队:

来自7个国家和地区的选手们不仅来自有432所海内外高校在读本科生、研究生和博士生,包括北京大学、北京邮电大学、都柏林大学、伦敦大学学院、墨尔本大学、南京大学、南京理工大学、清华大学、西安电子科技大学、山东大学、香港科技大学、浙江大学、中国科学技术大学,还有来自480+家企事业单位的在职员工,包括百度、滴滴出行、美团点评、小米、腾讯、微软、亚马逊、中国工商银行、中国平安、中国科学院等。众多顶尖技术人才在比赛中一决高下,表现出技术人才的风貌和技术无国界的精神。

依旧是强大的嘉宾和评审导师团队:

阿里巴巴研究员小邪、阿里巴巴中间件、系统软件、研发效能事业部负责人毕玄、阿里巴巴高级研究员多隆、阿里巴巴高级研究员索尼、中间件自身技术专家姬风、存储技术资深专家宗岱、中间件资深产品专家丹臣、中间件高级技术专家冯嘉、中间件高级技术专家北维、中间件高级技术专家千臂,导师们给予了选手们很多实践上的指导,也从选手们的分享和创新中获得了不少的启发,大家不分彼此,从分享中共同成长。

作为此次承办方之一的阿里中间件(Aliware)团队,是阿里巴巴集团技术生态系统的基石,一直以来为集团内部各大业务群提供可靠、高效、易扩展的技术基础服务。阿里中间件团队自主研发的云计算产品,包括企业级分布式应用EDAS、消息队列MQ、性能测试PTS、业务实时监控ARMS等10余款核心产品,帮组企业快速搭建互联网架构平台,具备业务中台能力,促进企业数字化转型的快速落地,目前已广泛应用于政府、央企、零售、物流、工业、金融、IoT等众多行业。

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
Kubernetes Java Linux
Kubernetes官方java客户端之一:准备
学习K8S官方java客户端的第一篇,做好准备工作
3086 1
Kubernetes官方java客户端之一:准备
|
机器学习/深度学习 人工智能 自然语言处理
人工智能技术的探讨
人工智能的概念,人工智能的发展,人工智能的各种学派,人工智能的应用领域
567 4
|
人工智能
MIT 76页深度报告:AI加速创新马太效应,科学家产出分化加剧!缺乏判断力将被淘汰
近日,麻省理工学院(MIT)发布了一份76页的深度研究报告,探讨AI对科学发现和创新的影响。研究对象为1018名美国科学家,结果显示AI使新材料发现增加44%,专利申请增长39%,产品创新提升17%。然而,AI对高能力科学家的产出提升更显著,加剧了科学家间的分化。AI还改变了科学家的工作内容,减少了创意构思时间,增加了评估任务,导致工作满意度下降,但科学家对AI的信心增强。报告全面分析了AI带来的机遇与挑战。论文地址:https://conference.nber.org/conf_papers/f210475.pdf
614 14
|
NoSQL 关系型数据库 MySQL
MySQL与Redis协同作战:优化百万数据查询的实战经验
【10月更文挑战第13天】 在处理大规模数据集时,传统的关系型数据库如MySQL可能会遇到性能瓶颈。为了提升数据处理的效率,我们可以结合使用MySQL和Redis,利用两者的优势来优化数据查询。本文将分享一次实战经验,探讨如何通过MySQL与Redis的协同工作来优化百万级数据统计。
861 5
|
存储 监控 安全
SaaS业务架构:业务能力分析
【9月更文挑战第20天】在数字化时代,软件即服务(SaaS)模式逐渐成为企业软件解决方案的首选。SaaS 业务架构设计对于提供高效、可靠的服务至关重要。其核心业务能力包括:用户管理(注册登录、角色权限)、数据管理(存储备份、安全共享)、业务流程管理(设计定制、工作流自动化)、应用集成(第三方应用、移动应用)及客户服务(支持培训、反馈改进)。通过优化这些能力,可为企业提供更高效、可靠的 SaaS 服务。
501 11
|
XML JavaScript Java
NekoHTML 是一个基于Java的HTML扫描器和标签补全器
**NekoHTML** 是一个基于Java的HTML扫描器和标签补全器(tag balancer),由J. Andrew Clark开发。它主要用于解析HTML文档,并能够“修正”许多在编写HTML文档过程中常犯的错误,如增补缺失的父元素、自动用结束标签关闭相应的元素,以及处理不匹配的内嵌元素标签等。这使得程序能够以标准的XML接口来访问HTML文档中的信息。 ### NekoHTML的主要特点包括: 1. **错误修正**:能够自动修正HTML中的常见错误,如未闭合的标签等。 2. **DOM树生成**:将HTML源代码转化为DOM(Document Object Model)结构,便
450 1
|
存储 NoSQL 安全
GEO类型
【10月更文挑战第9天】
439 0
|
Java 测试技术 Shell
FunASR英文离线文件转写软件包问题之软件包安装问题如何解决
FunASR英文离线文件转写软件包问题之软件包安装问题如何解决
435 0
|
XML 数据格式
Intellij idea getter setter 模板设置
Intellij idea getter setter 模板设置
519 0
|
Java 数据库连接 数据库
深入了解Java中的MyBatis Plus注解 @TableLogic:优雅实现逻辑删除功能
在数据库操作中,逻辑删除是一种常见的需求,它能够将数据标记为已删除状态而不是直接从数据库中删除。MyBatis Plus作为一款强大的ORM框架,提供了注解 `@TableLogic`,使得开发者可以轻松实现逻辑删除功能,而不必手动编写复杂的SQL语句。本文将详细介绍 `@TableLogic` 注解的用法及其在持久层开发中的应用。
5868 1