首先,让我们快速将视野放大到社会商业爆炸式增长的云时代,无论是创业公司还是发展中的公司,都希望能有一个低成本、可持续支撑的架构服务,帮助自己的业务持续发展,用户流量从小到大,无需变更架构,更不用中断业务。
结合我们之前的探索实践,我们知道,借助云原生Serverless的能力:实时弹性、按量付费,正好可以帮助我们把上述问题提升到一个新的维度去解决:业务完全可以放飞自我快速奔跑,架构服务由云原生Serverless矩阵来提供,保证流量再大也不怕。
中小研发生态现状
案例一,天猫精灵技能业务
天猫精灵的技能应用开发本身与天猫精灵开发者平台之前的连接较为松散,技能应用的开发对于一个中小开发者而言,启动成本较高。开发技能应用过程中的技术栈和方案也因人而异,因团队而异,也由于广大的开发者对技能应用背后的大流量没有一个一致的高水位保障,使得天猫精灵平台在做推广的时候也经常遇到阻力,担心在推广之后,很多技能无法承载大量涌入的活动流量,反而影响活动效果;
案例二,某直播互动健身创业公司
当前的核心痛点及诉求:
案例三,某软件外包服务商
O公司是一家base杭州的软件外包服务商,他们的研发团队构成为:5个Java、4个前端、1个iOS、1个Android、1个产品经理、2个测试、5个商务、6个品牌、2个UI设计;
核心要解决的问题以及产品化思考
我们将上述调研的客户反馈诉求进行梳理,可以归纳出以下几点诉求:人员、业务尽可能做到快速启动,低成本启动。开发人员能够快速进入业务开发,架构师能省就省,业务能够基于行业现有解决方案、基本业务架构、业务模块尽快启动;
线上业务能够做到按量付费:1、业务的流量高峰不会成为业务增长的瓶颈;2、类似于外包服务商/ISV,可以为他们的客户灵活制定弹性的服务体系;
基于以上三点,我们进一步抽象用户群体以及场景和服务策略:
主要用户群体
中小体量研发团队及创业公司研发团队;要做开发生态的业务或平台;行业软件/解决方案ISV/服务商;
场景和服务策略
定义了用户群体、问题、场景以及服务策略之后,我们开始尝试去定义这个产品:
我们要去打造一个全云端研发工作的平台,以业务、研发任务为用户界面,用户对云产品的感知尽量保持并限制在必要的情况之下,但是平台要在背后为他们提供一系列先进的云原生Serverless架构服务,同时,具备让用户的团队、环境、代码、协同等等实现在线的能力,帮助目标用户群体省钱、省时、可持续发展。
核心技术方案
作为一个面向用户业务视角而非云产品或任何单项研发能力视角的设计,背后就必不可少的要跟非常多的系统、产品、能力进行集成;并且,要达成与用户业务视角的关联,又需要额外设计一套核心应用模型去支撑。这里,我们通过两个架构设计,向大家阐述我们的实现思路与方式。
系统集成架构
认同在线协同是大趋势。我们把自己定义为大协同领域的一环,最好能够依托于一个更具全局性的团队在线协同底座去建设,我们与云效合作共建,基于一个共同的团队模型以及数据去设计实现不同的领域能力。
原子研发能力分布广泛,以代码为主线进行串联设计,在开发者用户路径中,我们与Codeup、Flow等产品进行集成,与经济体共建IDE集成,共同推出CloudIDE,为开发者提供从云上代码托管到云上研发,再到云上CICD的一站式服务;
解决方案实例化架构
用技术语言来描述的话,可以把解决方案实例化架构核心要解决的问题理解成将一个行业应用的开发经验进行“序列化”与“反序列化”的过程。
我们与OAM团队合作,以OAM为规范,对构成一个行业应用的研发环境以及依赖资源进行格式化、规范化的描述,生成一个云开发平台所能理解和认识的解决方案,这是“序列化”的过程;
当云开发平台去解析一个解决方案,核心会做两件事情,一是分析和生成一个基于阿里云产品矩阵构成的云原生Serverless架构,另一件事情是将依赖的资源做打包上传等预处理;然后开始生成任务,逐一进行生产、创建、安装,直至一个行业应用被初始化完成,这是“反序列化”的过程;
通过这种设计,我们实现了云开发平台最为核心的能力:帮助行业开发生态格式化、规范化地沉淀经验;帮助行业开发生态快速分发、复制行业应用开发经验;帮助行业开发生态无缝升级至先进的云原生Serverless架构;
阿里云云开发平台正式上线服务
2020年4月23日,阿里云云开发平台联合天猫精灵智能应用平台共同发布,上线云开发服务功能;2020年4月28日,阿里云云开发平台联合阿里前端委员会Serverless小组,共同发布基于AliMidwayFaaS框架的前后端一体通用NodeJS解决方案。2020年5月28日,与阿里巴巴云原生团队合作推出基于SpringCloud、MSE的微服务应用开发解决方案,轻松将微服务开发并部署在Serverless平台之上,帮助开发者以0启动成本、基于云原生Serverless架构服务,3分钟极致效率,完成一个标准技能应用的创建和部署。
在Roadmap中,还有小程序、大数据等场景解决方案将陆续上线。
感受云开发平台的极致特性
1个开发界面
1套统一的业务环境
1个领先的架构
N个行业应用场景
了解云开发平台的运作方式
云开发平台是一个可以满足开发者、研发团队完全基于「云+浏览器」就能完成日常开发工作的环境。它的设计理念是使自己成为团队大协同中的一环,它会跟阿里云诸多研发能力和工具进行集成,比如:云效企业协同底座、CloudIDE、Codeup、Flow等等,籍由强大的阿里研发生态,为用户提供更大的协同研发可能,用户可以在使用云开发平台的时候,根据业务的需要,主动选择去开通使用更多类似于项目管理、需求管理、文档管理等其他服务。
同时,为了帮助用户提供一个无缝应用阿里云服务的环境,云开发平台会跟阿里云的诸多云产品进行集成,随时为用户的使用而准备;用户可以在云开发平台创建基于各种场景解决方案的应用,并为每个应用选用不同的云服务,这些云服务会开通在用户的阿里云主账号之下,用户主动开通的各种云资源会按照用户的使用,正常地计量计费。
云开发平台鼓励所有的场景解决方案尽可能多的基于阿里云的Serverless类型产品去提供服务。Serverless类型的产品都具有实时弹性以及按量付费的特征,这可以帮助到商业化研发团队,以尽可能低的成本去实现自己的商业价值。
云开发平台具体如何真实地帮到目标用户群体
1、云开发平台如何帮助用户实现线上轻量化团队协同?
我们联合云效,共同构建了一个在线研发团队的能力,团队规模从1-10人到1000人以上,全都免费提供,助力企业快速成长!1分钟完成研发团队的在线化:在云开发平台,团队管理者创建好自己的企业,然后创建一批子账号分配给每一个团队成员,团队即完成了在线化;如果用户企业内已经有一套域账号系统,那么通过对接阿里云SP的SAML配置之后,能够方便实现用域账号的SSO;如果团队并非组织关系型怎么办呢?在云开发平台,团队管理者创建好自己的企业,然后复制邀请链接,发送给那些并非组织关系里的成员,收到邀请的成员确认加入团队即完成团队的在线化;
2、云开发平台如何帮助用户实现业务的快速启动呢?
团队在线之后就要开始启动业务。
3、云开发平台如何帮助用户实现研发环境的升级呢?
团队在线了,应用在线了,还剩下的环节就是代码和研发过程。
安全可靠且免费的代码托管服务:云开发平台联合阿里云Codeup,在云开发平台创建的每一个应用,都会自动分配一个免费的代码仓库,为用户提供安全可靠且免费的代码托管服务,帮助用户实现代码在线;
功能强大的云端开发环境:云开发平台联合阿里经济体共建团队推出自研CloudIDE,为用户提供功能强大,兼容VSCode插件生态的云端开发环境,内置NodeJS,Java,PhP,Python,C#等主流语言开发环境,开箱即用,体验媲美本地;当然,开发者也可以选择将代码克隆到本地,继续以个人偏好的开发习惯进行开发,之后随时将代码同步到云端,做到云端与本地的实时同步;
业界领先的Serverless架构:在每一个应用的背后,都有强大的阿里云Serverless产品矩阵构成的架构服务在支撑,APIGateway+FunctionCompute组合、VPC+ECI+EIP组合等等,保障每一个应用上线,都能稳稳地支撑,轻松助力用户不断攀登新的业绩高峰;
0成本启动:基于强大的云开发平台服务以及阿里云Serverless架构矩阵,我们帮用户把Serverless如丝般顺滑落地到他们的业务之中,大胆开发,放心试错,无需为云开发平台支付任何费用;
回顾
在这次突如其来的疫情期间,所有人都隔离在家,也许千人规模的企业能够有内部的强大IT系统做支撑,整个企业仍然可以进行远程异地运转,但是对于广大的初创及成长中的企业,这种能力无疑是稀缺的,而在线,可能是未来的一个趋势和常态。随着阿里云云开发平台服务的上线,我们可以真正帮助到这些企业,通过用户业务视角、用户研发界面、提供云计算的开箱即用,去释放云上研发,Serverless架构的技术红利,推动云计算的普惠价值。