云原生应用架构转型不好做?阿里云这个平台让你一步到位!

云原生实践带来的挑战 

阿里云云原生为企业提供了完善的容器服务、函数计算、微服务体系、中间件体系。每个服务都有伸缩性、弹性和组合性,通过产品选择或组合搭建,能轻松完成应用与运行环境解耦,和传统应用研发模式具有较大差异。从传统研发模式过渡到云原生时代,抑或传统应用和云原生长期并存过程中,云原生应用的实现、集成、部署、运维都面临较大的挑战。

1.存量应用与云原生应用长期并存的整合问题

虽然云原生可以覆盖绝大部分应用场景,甚至以往比较难解决的问题在云原生下都可迎刃而解,如营销场景的应用。但有些应用场景在云原生下并无决定性优势,且存在迁移成本,加之传统应用在系统架构上的约束,这些将导致存量传统应用将和云原生应用长期并存。如何整合这两种应用的研发链路,以及基础设施层面的互联互通,是云原生实践带来的一个挑战。

2.研发环境的成熟度问题

云原生新应用的实践或存量应用的云化,不仅仅是基础设施和平台的变化,在架构设计、开发方式、测试联调、部署维护等各阶段和各方面都要基于云的特点做出相应调整。传统线下IDE工具链将无能为力,在DevOps这条工具链上,需要一个集成度高、操作路径短的研发环境。

3.研发模式、组织阵型与云原生的适配问题

云原生通常以微服务架构进行服务开发,函数计算更细粒度到函数级别。松耦合的架构方式会减轻因需求变更导致的系统迭代成本,并加快交付速度。微服务使得单个服务的开发团队更小,也更加独立,这种松耦合+独立小型的团队使得持续更新和敏捷协作成为可能。在这种情况下,云端出现的问题解决会更突出,在线协作将比线下交流会有更高的效能。

与云原生跨代优势相比,这三点只能算“最后一公里”的问题。今天,阿里云推出的云开发平台正在解决云原生Serverless集成研发使用的"最后一公里"问题。

云开发平台的功能特性

云开发平台集成了阿里云FC、SAE、ASK三种serverless计算服务,在VPC基础设施之上,把众多中间件云产品按账户、产品线、应用、函数4个级别进行归类,设定共享级别,按需编排。通过业务语言的方式传达,大幅降低了开发者的学习理解成本,提供集成研发环境,进而降低使用集成云产品的难度,提升研发效能。或者可以说,云开发平台是阿里云面向开发者的一个研发门面,由于创建编排的云服务都在开发者的主账号下,因此基于云开发创建的应用和用户存量系统是互联互通的,从这点上说云开发平台是一套开放的、集成的研发环境。

云开发平台只集成云原生Serverless计算服务,而Serverless计算的免运维特性,使资源投入更聚焦在研发上,让应用从创建到实现运营都能在云开发平台上完成。其中FC是函数形态的计算服务,SAE、ASK是服务形态的计算服务。云开发平台具有以下特性:

1.IT架构覆盖绝大多数应用场景

为用户提供开箱即用的基础设施服务,云开发平台聚焦于三种通用的IT架构:1)函数型IT架构;2)服务型IT架构;3)函数、服务混合型IT架构。这三种IT架构基本能涵盖当前适合云原生的所有应用场景。

1)函数型IT架构

这种架构能支持大部分移动应用,因为按调用次数计费,所以可以“0”费用启动项目,适合大部分初创团队的应用场景、企业静态站点场景,以及峰谷流量明显的应用场景,比如营销活动。Serverless的弹性特性,减少了扩缩容的人力成本和计算成本。

 

截屏2020-11-29 下午1.59.33.png

2)服务型IT架构

截屏2020-11-29 下午1.59.45.png

当前大部分应用都是服务型IT架构,如SpringBoot应用、PHP应用,这种架构模式可以很好的承接当前存量应用的云化迁移。基于阿里云MSE(微服务引擎),也适合微服务化架构的应用。这种架构支持按小时计费的模式,即开即用,相对于函数型IT架构,更适合稳定的大流量业务场景。

3)函数、服务混合型IT架构

截屏2020-11-29 下午2.00.15.png

混合型IT架构,充分利用函数型Serverless、服务型Serverless各自的优势,端侧接入采用函数计算,按调用次数计费,以及快速敏捷的弹性伸缩能力轻松支持各种峰谷流量。而服务型Serverless,可以组合各种中间件服务,形成高性能、弹性灵活的微服务中台系统,可以支持当前主流复杂的应用场景。

2.支持与存量系统的互联互通

当前云原生还处在商业导入期。企业用户一般会先用一些适合Serverless的场景小试牛刀,这时创建的Serverless一定不是孤立的应用,它需要访问存量的数据库、中间件服务以及BPaaS中台功能。因此与存量系统的互联互通是Serverless推广应用的首要条件。云开发平台项目一开始就考虑到这个特性,把自己定位为工具,不自建容器。由用户授权,云开发平台支持Serverless应用在用户的账户空间中完成CICD,用户可以选择部署在存量应用所在的VPC、VSwitch上,因此,Serverless应用和存量系统、存量数据库、中间件服务的交互畅通无阻。      

3.支持被集成Serverless的CICD能力

基于传统应用研发和Serverless应用研发长期并存的考虑,Serverless研发需要和ISV本地研发模式相兼容,只有切入到ISV当前的场景中,才有机会引导ISV、开发者到云开发模式当中。云开发平台当前提供了三个层级的使用方案:

对于新手开发者,云开发平台提供了一个包括创建、实现、测试、构建、部署全部环节的集成研发环境,支持一站式实现Serverless应用;

对于有研发体系的ISV,研发、测试在本地完成。云开发平台和ISV的分工界面在代码仓库Codeup上,云开发平台提供全套CICD功能,开发者提交代码到Codeup上后,CICD功能、资源编排都交给云开发平台;

对于有研发体系并且有CI体系的ISV,提供基础设施的编排以及CD功能。

对于有研发体系的后两者,通过提供POP接口,支持ISV进行集成,和ISV现有研发体系无缝融合。

4.团队在线协同特性

受疫情影响,上半年大家都体验了远程办公的模式,更有报道称,美国的公司员工将有50%永久远程办公。可以预见,在未来以云原生应用为主的研发模式下,远程办公将是常态,在线编程、在线测试联调、在线集成部署都在CloudIDE中完成,团队在线协同功能是云开发平台的重要特征之一。

企业、团队、开发者角色的权限控制体系,加上Cloud-Native的集成研发环境,组成了云开发平台在线协同功能特性。Serverless的编程流畅性,测试联调、构建部署一站式体验将在CloudIDE中持续打磨。

5.基础架构平台能力

云原生一个重要的特征是微服务化,继而开发团队更小更独立。但前提是要有一套统一框架和统一标准,小团队才能独立去迭代业务逻辑。这套框架、标准,以及基础类库需要体现在微服务的整个研发过程当中。

另外微服务化后,可以抽象出更多的通用能力。传统上这些通用功能会通过SDK提供出来,但在云原生环境下,这些通用能力可以直接部署为服务,函数级能力可以部署于函数计算,提供函数级通用服务;模块级能力可以通过容器方式部署,向外提供模块级通用服务。

云开发平台充分考虑到这一云原生研发模式的特征,提供了应用级解决方案,当前支持静态定义。后期将支持动态生成,基于一系列基础框架、基础类库,像活字印刷一样组合成为某一场景的应用模板,开发者将在其上专注实现业务逻辑。函数级通用服务、模块级通用服务的生产、安装正在实现当中,将很快发布上线。

集成案例介绍

说不如练,云开发平台就在你眼前:https://workbench.aliyun.com,以下将简单介绍SpringBoot应用、PHP应用如何迁移到Serverless计算服务当中。

1.SpringBoot应用迁移

对于存量系统的迁移,云开发平台已经上架了FC、SAE、ASK的各种架构形式的迁移解决方案,且还在不断丰富当中。Springboot迁移方案步骤:

  1)在云开发平台上创建一个“SpringBoot应用迁移方案(ASK)”应用;

  2)打开这个应用的CloudIDE环境,点击“开发部署”;

  3)在CloudIDE中,把存量系统的src目录和pom.xml拖到CloudIDE工程目录中;

  4)调整pom.xml, 增加两个约定配置:

 <properties><applicationName>${project.artifactId}</applicationName><spring-boot.version>2.2.6.RELEASE</spring-boot.version></properties>...<build><finalName>${applicationName}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><!--需要替换您的springboot启动类--><mainClass>com.alibaba.sca.temp.web.Application</mainClass><layout>ZIP</layout></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins>...</build>

  5)提交修改的代码,然后构建部署进行验证,完成迁移工作。

完成Springboot应用到Serverless的迁移,让存量应用快速具备云开发CICD的特性,以及Serverless应用的所有优势。

2. PHP应用迁移

PHP应用迁移方案步骤:

   1)在云开发平台上创建一个“PHP 应用迁移方案(SAE)”或者 “PHP 应用迁移方案(ASK)”应用;

   2)打开这个应用的CloudIDE环境,点击“开发部署”;

   3)然后,把存量的PHP项目文件拖放到CloudIDE工程目录下,就能完成迁移工作;

   4)提交代码并Push,然后就可以开始进行应用部署,部署成功后,云开发平台会生成一个临时域名出来,点开即可验证部署效果。

原文链接
本文为阿里云原创内容,未经允许不得转载。

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

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

相关文章

对话MathWorks:解读MATLAB技术生态圈与未来趋势

37年前的1984年&#xff0c;MathWorks公司在美国加州成立。在成立的第14个年头&#xff0c;销售额就达到了一个亿美金。如今MathWorks公司在全球有超过5000名员工分布在34个办公室&#xff0c;2020年的销售额已达12亿美金。众所周知&#xff0c;MathWorks手握MATLAB和Simulink两…

如何基于DataWorks构建数据中台?

一 新零售的商业模式 一家新零售企业如果要做数据中台的话&#xff0c;首先很重要的一点就是一定要懂业务。之前有位同学问过我&#xff0c;说数据中台很难建。在我看来&#xff0c;数据跟业务是息息相关的&#xff0c;在构建整个数据中台的时候&#xff0c;首先要对业务有一个…

浪潮云海OS再度登顶 SPEC Cloud性能得分「全球第一」

近日&#xff0c;国际标准性能评测组织SPEC&#xff08;Standard Performance Evaluation Corporation&#xff09;公布最新云计算性能 Cloud IaaS 2018 Benchmark 测试成绩&#xff0c;在同规模测试场景下&#xff0c;浪潮云海OS再次刷新世界纪录&#xff0c;性能得分全球第一…

降本增效利器!趣头条Spark Remote Shuffle Service最佳实践

王振华&#xff0c;趣头条大数据总监&#xff0c;趣头条大数据负责人曹佳清&#xff0c;趣头条大数据离线团队高级研发工程师&#xff0c;曾就职于饿了么大数据INF团队负责存储层和计算层组件研发&#xff0c;目前负责趣头条大数据计算层组件Spark的建设范振&#xff0c;花名辰…

道旅:使用ARMS做业务监控数据清洗

作者&#xff1a;折松&#xff0c;阿里云解决方案架构师 深圳市道旅旅游科技股份有限公司&#xff08;简称&#xff1a;道旅&#xff09;是一家总部位于中国的全球酒店资源批发商。自2012年成立以来&#xff0c;道旅凭借其全球优质的直签产品和丰富的第三方产品&#xff0c;以…

日分发量破8.6亿,OPPO如何帮助开发者突破流量增长瓶颈

编辑 | 宋慧 出品 | CSDN云计算 头图 | OPPO软件商店开发者沙龙现场图 7月20日&#xff0c;OPPO软件商店开发者沙龙在北京成功举行&#xff0c;沙龙以「破解流量密码 解锁增长关键」为主题&#xff0c;基于应用分发行业洞察&#xff0c;围绕流量增长、服务赋能、开发者出海、本…

阿里 双11 同款流控降级组件 Sentinel Go 正式 GA,助力云原生服务稳稳稳

作者 | 赵奕豪&#xff08;宿何&#xff09; Sentinel 开源项目负责人来源|阿里巴巴云原生公众号 前言 微服务的稳定性一直是开发者非常关注的话题。随着业务从单体架构向分布式架构演进以及部署方式的变化&#xff0c;服务之间的依赖关系变得越来越复杂&#xff0c;业务系统…

AI一体机高速自由流收费稽核解决方案

自2019年两会政府工作报告中明确“深化收费公路制度改革&#xff0c;两年内基本取消全国高速公路省界收费站&#xff0c;实现不停车快捷收费&#xff0c;减少拥堵&#xff0c;便利群众”政策以来&#xff0c;全国高速公路取消省界收费站的工作快速推进。在撤站实现开放式的收费…

重磅!大数据知识总结和调参技巧开放下载了

大数据被誉为“新石油”&#xff0c;如何管理并洞悉数据的价值&#xff0c;是企业未来发展的核心竞争力。进入大数据时代&#xff0c;数据规模与日俱增。另一方面&#xff0c;数据仓库的市场份额被其他技术蚕食&#xff0c;比如大数据、机器学习和人工智能。这种趋势给我们造成…

2020阿里云双12-企业飞天会员年终盛典全攻略

2020阿里云双12大促活动于12月09日正式开启&#xff0c;至12月31日结束。此次双12阿里云将有哪些亮点活动&#xff0c;此篇文章将一一为大家阐述。 今年阿里云双12将重点服务企业用户&#xff0c;在大促期间&#xff0c;企业实名认证用户可加入阿里云飞天会员&#xff0c;享受…

工商银行基于 Dubbo 构建金融微服务架构的实践-服务发现篇

作者 | 张远征来源|阿里巴巴云原生公众号 导读&#xff1a;Dubbo 作为分布式微服务框架&#xff0c;众多公司在实践中基于 Dubbo 进行分布式系统架构。重启开源后&#xff0c;我们不仅看到 Dubbo 3.0 最新的 Roadmap 发布&#xff0c;而且还看到阿里在自身电商开始推进 Dubbo 和…

Kubernetes 诞生七年,凭什么成为主流?

来源 | CSDN头图 | 付费下载于 IC photo引言作为一款开源的容器编排引擎&#xff0c;始于2014年的Kubernetes一经推出就受到了开发者的喜爱&#xff0c;在此之前&#xff0c;从来没有人想过能有一个同时被所有云供应商支持的分布式应用。在Kubernetes里&#xff0c;用户可以轻松…

贡献的 PR 数仅次于阿里团队,我是如何成为 Spring Cloud Alibaba committer 的?

Spring Cloud Alibaba 开源两年时间&#xff0c;已经成为了最受开发者关注、最活跃的 Spring Cloud 实现。它之所以能这么快的受到开发者的认可&#xff0c;一方面是它生态中的组件丰富且经过阿里 双11 验证&#xff0c;但更重要的还是社区中各位贡献者、广大用户的贡献和反馈。…

专访涯海:阿里云中间件是如何支撑双11的?

以下是本次访谈关键内容的整理。 点击这里可前往“2020阿里双11技术全观”专题查看访谈视频回放 播报员&#xff1a; *各位开发者朋友们&#xff0c;大家好。欢迎收看我们这一期的双11技术播报栏目&#xff0c;我是你们的播报员莫孤。今天我们依然还是双11技术播报的特别篇&a…

你和大厂的匹配度多高?立马去C认证测试一下,提前备考大厂

一年一度的秋招要开始了&#xff0c;又有人开始慌了。前段时间在技术沙龙群里跟同学们聊天&#xff0c;大家集体吐槽今年求职内卷的严重。投了很多简历却石沉大海&#xff0c;秋招快开始了自己却还毫无头绪&#xff0c;想去大厂但是完全不知道如何下手。在这样的焦虑情绪下&…

排查指南 | 当 mPaaS 小程序提示“应用更新错误(1001)”时

问题描述&#xff1a;APP 启动 mPaaS 小程序弹出 toast 信息&#xff1a;"应用更新错误"。 原因分析 调用MDS小程序更新接口之后&#xff0c;没有拉到对应的小程序信息&#xff0c;就会返回1001。 mPaaS 框架在打开一个小程序应用前&#xff0c;首先需要获知该小程…

你想知道的容器混合云问题,答案都在这里!

作者&#xff1a;范桂飓来源&#xff1a;CSDN 博客前言今天笔者有幸受邀参加了亚马逊云科技中国峰会&#xff08;上海站&#xff09;的 “开发者之家《观点碰撞》” 活动&#xff0c;与诸位亚马逊云科技的技术专家们一同对话 “容器混合云会是未来的答案吗”&#xff1f;坦诚地…

ChaosBlade x SkyWalking 微服务高可用实践

来源|阿里巴巴云原生公众号 前言 在分布式系统架构下&#xff0c;服务组件繁多且服务间的依赖错综复杂&#xff0c;很难评估单个故障对整个系统的影响&#xff0c;而且请求链路长&#xff0c;如果监控告警、日志记录等基础服务不完善会造成故障响应、故障定位问题难&#xff…

如何实现用户通信授权的可信、可知、可追溯?——通信授权服务技术解读

目前&#xff0c;如何防治骚扰电话&#xff0c;保障呼叫中心市场绿色、健康的市场环境&#xff0c;是监管部门、企业和大众都非常关注的社会问题。在高频迭代的通信业务中&#xff0c;企业如何安全快速获取用户授权同意&#xff0c;同时保障用户体验&#xff1f;12月9日&#x…

阿里10年:一个普通技术人的成长之路

一 关于我 宋健&#xff0c;花名宋意&#xff0c;2008年开始参加工作&#xff0c;至今12年多一直专注在运维领域。2010年6月加入支付宝&#xff0c;做过监控、SRE、资源管理、运维产品等方面的工作&#xff0c;经历并参与了阿里运维从脚本到工具化再到自动智能化的演进过程&am…