你真的会在函数计算FC上部署springboot云上博客吗

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
函数计算FC,每月15万CU 3个月
.cn 域名,1个 12个月
简介: Serverless中文名称为无服务器模式的一种云原生开发模型,可以让程序员专注于构建整个应用逻辑和运行程序,而不需要进行服务器的操心。这一部分可以理解成这样,程序员减少了不必要的工作,然后将服务器外包给各个云开发商,比如说我们现在用的众多云(阿里云微软云、亚马逊和Google云服务等)开发人员可以通过将产品开发的打包到容器当中然后进行部署即可。

Serverless中文名称为无服务器模式的一种云原生开发模型,可以让程序员专注于构建整个应用逻辑和运行程序,而不需要进行服务器的操心。这一部分可以理解成这样,程序员减少了不必要的工作,然后将服务器外包给各个云开发商,比如说我们现在用的众多云(阿里云微软云、亚马逊和Google云服务等)开发人员可以通过将产品开发的打包到容器当中然后进行部署即可。

无服务器框架的特点有点像是节能电梯,用的时候启动,不用的时候就休息,也就是通过这种流量的方式进行计费。值得一提的这种外包的无框架服务,涵盖了负载平衡、安全补丁、容量管理、扩展、日志和监控等任务。我们现在大多采用的是功能即服务的一种驱动计算模式,所有的东西只需要程序员将编写逻辑,部署到云平台管理的容器中然后按需执行,这部分最大的特点就是让客户(程序员)有更大的权限实现应用的自定义。

阿里云函数计算是什么?

很多人看到这个问题时,尤其是一些新人,对他们来说都是大问题。函数计算是事件驱动的全托管计算服务。这里和传统最大的区别之一就是不需要任何基础设施,只需要一个可以上网的笔记本,不需要复杂昂贵的本地设备客户端设备。我们可以直接将本地编写的代码上传到云端,通过函数计算可以快速使用阿里云服务完成应用场景的快速搭建。

流程:

整个工作流程基本上是通过开发者将编写的应用按照桉树计算支持的开发语言,通过函数控制台或者Serverless Devs上传,通过事件触发和函数计算调用API进行出发。在此过程执行期间,函数计算根据用户的需求,进行自动扩容,整个过程公开透明。

创建服务的整个流程:

现在有体验活动,我们可以免费体验整个流程,整个的规格达到了40GB/秒,大家如果感兴趣可以去阿里云社区进行体验。链接的话放在这里:

https://developer.aliyun.com/topic/serverless2022

进入这个界面点击免费开通实现千万产品免费订购即可

创建服务的整个流程其实比较简单,主要通过5个步骤即可完成,具体的操作步骤如下:

1.打开后台的函数计算FC点击左侧任务栏中的服务即函数或者创建服务

2.点击创建服务

我们可以根据名称和描述正常填写内容来创建服务内容。值得注意的是,当您选择打开日志功能和链路跟踪功能时,这里的一切都将被获取和收集。在高级选项中,我们可以选择服务角色,默认状态是阿里云服务RAM角色role收集你的资源。因为是首个应用,所有一切都没有开通,所以会提示日志服务还没有开通,我们立即开通即可。

这里的日志服务可以通过以下链接进行查看:

https://sls.console.aliyun.com/lognext/profile

然后我们在进一步及逆行函数计算FC创建过程中,需要我们再次授权,就可完成一个服务的创建

在应用创建中我们可以进行选择其中的一个进行创建:

在创建应用中我们需要进行文件管理的权限开通:NAS文件系统(阿里云文件存储NAS是一个可共享访问,弹性扩展,高可靠,高性能的分布式文件系统。兼容POSIX 文件接口,可支持数千台计算节点共享访问,可以挂载到弹性计算ECS、神龙裸金属、容器服务ACK、弹性容器ECI、批量计算BCS、高性能计算EHPC,AI训练PAI等计算业务上提供高性能的共享存储,用户无需修改应用程序,即可无缝迁移业务系统上云。)

同样每一个应用在创建的过程中的时候就会有不同的而角色快捷创建,这是提供的模板和场景的情况下

接下来是应用程序的创建,我直接通过GitHub绑定,方便以后的管理

等几秒钟就能完成部署了,非常方便快捷

我们可以通过我们建好的通过域名进行访问,然后我们下载相关的工具可以在本地进行:

我们可以在后台看到我们所创建的一系列函数,可以查看运行环境、调用次数等等。这样一个简单的应用场景就部署好了,后期我们可以通过填充式的代码来完成相应的程序编写。

开发步骤


1.开通函数计算

开通前需要您已注册阿里云账号并完成实名认证,进入函数计算官网函数计算https://fcnext.console.aliyun.com如果您还未开通函数计算,需在函数计算开通页面勾选呢函数计算服务协议之后点击立即开通,开通完成后会自动跳转至函数计算控制台。

2.新建服务

在函数计算控制台点击 "服务及函数" 进入服务列表,在服务列表点击创建服务,填写服务的配置,点击确认即可创建服务,注:开启日志和链路追踪功能可以更方便的进行代码调试、故障分析、数据分析和查看函数内部时间的消耗等(推荐开启,但可能会收取部分费用)。


3.新建函数

在服务列表下点击创建的服务名称进入函数管理页面,点击创建函数,在创建函数页面选择 "使用自定义运行时创建" 填写函数的相关配置,在运行环境中选择Java 17的示例模版函数,配置完成后页面下拉至底部点击创建即可部署一个springboot项目。




4.自定义域名配置

函数创建完成后直接在浏览器中直接打开请求地址,将会以附件的方式下载响应。这是因为 Http 触发器会自动在响应头中添加 Content-Disposition: attachment 字段,我们可以使用自定义域名避免该问题,进入域名管理页面点击添加自定义域名,在路由配置中选择自己创建的服务和函数,配置完成后,就可以在浏览器中输入配置的域名,可以看到页面显示的Hello World!内容,到此一个简单的springboot项目就部署配置完成了。

5.开发

  • 导出代码

继续进行项目开发,我们可以在函数计算控制台进入到该函数的详情页面在函数代码页使用在线IED进行开发和调试,也可以在"导出函数"这里导出函数的代码,使用自己的代码编辑器进行开发。

  • 代码结构

  • pom.xml
<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.6</version><relativePath/><!--lookupparentfromrepository--></parent><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>DemoprojectforSpringBoot</description><properties><java.version>17</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>


  • DemoApplication
packagecom.example.demo;
importorg.springframework.boot.SpringApplication;
importorg.springframework.boot.autoconfigure.SpringBootApplication;
importorg.springframework.web.bind.annotation.GetMapping;
importorg.springframework.web.bind.annotation.RequestParam;
importorg.springframework.web.bind.annotation.RestController;
@SpringBootApplication@RestControllerpublicclassDemoApplication {
publicstaticvoidmain(String[] args) {
SpringApplication.run(DemoApplication.class, args);
    }
@GetMapping("/")
publicStringhello(@RequestParam(value="name", defaultValue="World") Stringname) {
returnString.format("Hello %s!", name);
    }
}


  • 配置监听端口

在application.properties配置文件中添加监听端口,这里的配置端口需要和函数配置的监听端口保持一致

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
1月前
|
Java Maven Docker
gitlab-ci 集成 k3s 部署spring boot 应用
gitlab-ci 集成 k3s 部署spring boot 应用
|
18天前
|
弹性计算 人工智能 自然语言处理
魔搭社区与函数计算:高效部署开源大模型的文本生成服务体验
在数字化时代,人工智能技术迅速发展,开源大模型成为重要成果。魔搭社区(ModelScope)作为开源大模型的聚集地,结合阿里云函数计算,提供了一种高效、便捷的部署方式。通过按需付费和弹性伸缩,开发者可以快速部署和使用大模型,享受云计算的便利。本文介绍了魔搭社区与函数计算的结合使用体验,包括环境准备、部署应用、体验使用和资源清理等步骤,并提出了改进建议。
|
1月前
|
分布式计算 大数据 Serverless
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
在2024云栖大会开源大数据专场上,阿里云宣布推出实时计算Flink产品的新一代向量化流计算引擎Flash,该引擎100%兼容Apache Flink标准,性能提升5-10倍,助力企业降本增效。此外,EMR Serverless Spark产品启动商业化,提供全托管Serverless服务,性能提升300%,并支持弹性伸缩与按量付费。七猫免费小说也分享了其在云上数据仓库治理的成功实践。其次 Flink Forward Asia 2024 将于11月在上海举行,欢迎报名参加。
176 1
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
|
22天前
|
缓存 前端开发 JavaScript
前端serverless探索之组件单独部署时,利用rxjs实现业务状态与vue-react-angular等框架的响应式状态映射
本文深入探讨了如何将RxJS与Vue、React、Angular三大前端框架进行集成,通过抽象出辅助方法`useRx`和`pushPipe`,实现跨框架的状态管理。具体介绍了各框架的响应式机制,展示了如何将RxJS的Observable对象转化为框架的响应式数据,并通过示例代码演示了使用方法。此外,还讨论了全局状态源与WebComponent的部署优化,以及一些实践中的改进点。这些方法不仅简化了异步编程,还提升了代码的可读性和可维护性。
|
24天前
|
Serverless 数据安全/隐私保护 前端开发
大模型代码能力体验报告之贪吃蛇小游戏《一》:Claude.ai篇 - 生成、预览和快速部署的serverless一条龙
本文介绍了通过Claude.ai生成并优化Web版贪吃蛇游戏的过程,展示了其强大的代码生成功能及用户友好的界面设计。从初始版本的快速生成到根据用户反馈调整游戏速度,再到提供多种实用工具如文件管理、版本控制和一键部署,Claude.ai不仅是一个代码助手,更像是一个全面的serverless开发平台。文中还呼吁国内厂商关注此类技术的发展。
|
29天前
|
人工智能 弹性计算 自然语言处理
《触手可及,函数计算玩转 AI 大模型》解决方案体验与部署评测
在AI技术快速发展的背景下,大模型正推动各行业的智能化转型。企业为抓住机遇,纷纷寻求部署AI大模型以满足特定业务需求。阿里云函数计算凭借按量付费、卓越弹性和快速交付等优势,为企业提供了高效、安全的AI大模型部署方案。本文将详细介绍阿里云函数计算的技术解决方案及其在文生文、图像生成和语音生成等领域的应用实例,展示其在降低成本、提高效率和增强灵活性方面的显著优势。
|
1月前
|
弹性计算 Serverless API
海量大模型如何一键部署上云,函数计算 x ModelScope 社区给出答案
得益于阿里云函数计算的产品能力,魔搭 SwingDeploy 后的模型推理 API 服务默认具备极致弹性伸缩(缩零能力)、GPU 虚拟化(最小 1GB 显存粒度)、异步调用能力、按用付费、闲置计费等能力,这些能力帮助算法工程师大大加快了魔搭开源模型投入生产的生命周期。
|
1月前
|
数据可视化 Java 应用服务中间件
springboot打war包,成功部署
这篇文章介绍了如何将Spring Boot项目打包成WAR文件,并成功部署到Tomcat服务器的详细步骤。
113 0
springboot打war包,成功部署
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
143 1
|
17天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
95 62