天天看点

体验一键极速部署 K8s 应用,领取阿里云定制版帽衫IT 架构覆盖绝大多数应用场景立即上手

来源| 阿里巴巴云原生公众号

Gartner 于 2019 年发布报告表示:云原生时代已经到,在未来三年中将有 75% 的全球化企业使用容器化的应用。云原生具有诸多优势,如系统弹性带来用户体验提升、研发效能提升、低成本运维或免运维,以及即插即用按量计费的计算成本等,这些优势使得创新团队可以快速将新想法推向市场,这正是初创公司愿意使用云原生来颠覆传统行业的原因。从传统研发模式过渡到云原生时代,怎么解决云原生集成研发使用的"最后一公里"问题。

文末体验有福利大礼包

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

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

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

为用户提供开箱即用的基础设施服务,云开发平台聚焦于三种通用的 IT 架构:

  • 函数型 IT 架构;
  • 服务型 IT 架构;
  • 函数、服务混合型 IT 架构。

这三种 IT 架构基本能涵盖当前适合云原生的所有应用场景。

  • 函数型 IT 架构

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

  • 服务型 IT 架构

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

  • 函数、服务混合型 IT 架构

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

立即上手

说不如练,以下将简单介绍 SpringBoot 应用、PHP 应用如何迁移到云开发平台,Serverless 计算服务当中。

云开发平台:

https://workbench.aliyun.com

1. SpringBoot 应用迁移

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

  • 在云开发平台上创建一个“SpringBoot 应用迁移方案(ASK)”应用;
  • 打开这个应用的 CloudIDE 环境,点击“开发部署”;
  • 在 CloudIDE 中,把存量系统的 src 目录和 pom.xml 拖到 CloudIDE 工程目录中;
  • 调整 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>           
  • 提交修改的代码,然后构建部署进行验证,完成迁移工作。

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

2. PHP 应用迁移

PHP 应用迁移方案步骤:

  • 在云开发平台上创建一个“PHP 应用迁移方案(SAE)”或者 “PHP 应用迁移方案(ASK)”应用;
  • 然后,把存量的 PHP 项目文件拖放到 CloudIDE 工程目录下,就能完成迁移工作;
  • 提交代码并 Push,然后就可以开始进行应用部署,部署成功后,云开发平台会生成一个临时域名出来,点开即可验证部署效果。

WordPress 是社区比较热门的由 PHP 实现的建站平台,提供所见即所得的页面编辑发布功能。云开发平台支持一站式部署 WordPress,开发者可以依据 

https://workbench.aliyun.com/activities/k8s

 中的描述部署,充分体验一下 WordPress 部署过程,感受 PHP 应用的迁移过程,5 分钟极速上手领取阿里云帽衫,分享页面给朋友助力还能获得天猫精灵音箱。